input: from typing import Dict, List
  
  def parse_csv(filename: str) -> Dict[str, List[float]]:
      """
      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')
      {'Rows': [3], 'Columns': [4], 'Data Totals': [[12.0, 3], [22.0, 3], [32.0, 3], [42.0, 3]]}
      """
      with open(filename) as csv_file:
          reader = csv.DictReader(csv_file)
          rows = 0
          cols = 0
          data_totals = []
          for row in reader:
              rows += 1
              if cols == 0:
                  cols = len(row)
              for col in row:
                  if len(data_totals) < cols:
                      data_totals.append([float(row[col]), 1])
                  else:
                      data_totals[list(row.keys()).index(col)][0] += float(row[col])
                      data_totals[list(row.keys()).index(col)][1] += 1
          return {'Rows': [rows], 'Columns': [cols], 'Data Totals': data_totals}
output:     
      import csv
  