input: 
  def parse_csv(filename: str) -> None:
      """
      Parses a CSV and generates a new CSV that adds the total number of rows, total 
      number of columns, and total amount of data for each attribute.
      
      >>> parse_csv('test.csv')
      # Output: new_csv.csv containing 1 row and 3 columns with values [3, 4, [[5.0, 3], [7.0, 3], [9.0, 3], [11.0, 3]]]
      """
      import csv
      
      with open(filename) as csv_file:
          reader = csv.DictReader(csv_file)
          rows = 0
          cols = 0
          data_totals = []
          for row in reader:
              rows += 1
              cols = len(row)
              for col in row:
                  if len(data_totals) < cols:
                      data_totals.append([float(row[col]), 1])
                  else:
                      existing_total = data_totals[list(row.keys()).index(col)]
                      new_total = [existing_total[0] + float(row[col]), existing_total[1] + 1]
                      data_totals[list(row.keys()).index(col)] = new_total
          with open('new_csv.csv', mode='w') as new_csv_file:
              writer = csv.writer(new_csv_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
              writer.writerow(['Rows', 'Columns', 'Data Totals'])
              writer.writerow([rows, cols, data_totals])
  
  if __name__ == '__main__':
      filename = 'test.csv'
      parse_csv(filename)
  
output:     import csv
      
      with open(filename) as csv_file:
          reader = csv.DictReader(csv_file)
          rows = 0
          cols = 0
          data_totals = []
          for row in reader:
              rows += 1
              cols = len(row)
              for col in row:
                  if len(data_totals) < cols:
                      data_totals.append([float(row[col]), 1])
                  else:
                      existing_total = data_totals[list(row.keys()).index(col)]
                      new_total = [existing_total[0] + float(row[col]), existing_total[1] + 1]
                      data_totals[list(row.keys()).index(col)] = new_total
          with open('new_csv.csv', mode='w') as new_csv_file:
              writer = csv.writer(new_csv_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
              writer.writerow(['Rows', 'Columns', 'Data Totals'])
              writer.writerow([rows, cols, data_totals])