original_docstring: 
          provided the path to the data load the data but skip the
          first line because it is garbage.  start_year and end_year are
          provided to give user control over how many years of data required.
      
docstring: provided the path to the data load the data but skip the
  first line because it is garbage.  start_year and end_year are
  provided to give user control over how many years of data required.
docstring_tokens: provided the path to the data load the data but skip the first line because it is garbage . start_year and end_year are provided to give user control over how many years of data required .
code: def load_csv_data_multiple_years(path_to_data, start_year, end_year):
      '''
          provided the path to the data load the data but skip the
          first line because it is garbage.  start_year and end_year are
          provided to give user control over how many years of data required.
      '''
      bank_data = []
      new_bank_data = []
      for year_index in range(start_year, end_year+1):
          path = path_to_data + "/" + str(year_index) + "/"
          only_files = [f for f in listdir(path) if isfile(join(path, f))]
          only_files.sort()
          for file_index in range(0, len(only_files)):
              csv_file_name = path + "/" + only_files[file_index]
              print("processing %s" % csv_file_name)
              with open(csv_file_name, "r") as csv_file:
                  csv_reader = csv.reader(csv_file)
                  next(csv_reader, None) # skip the first row
                  for row in csv_reader:
                      bank_data.append(row)
          # now we have read the data but the format is not correct, so below
          # we reformat the types to the proper type
          for index in range(0, len(bank_data)):
              date_str = bank_data[index][0]
              year = int(date_str.split("/")[0])
              month = int(date_str.split("/")[1])
              day = int(date_str.split("/")[2])
              new_row = {
                          'date': date(year, month, day),
                          'amount': float(bank_data[index][1]),
                          'description_1': bank_data[index][2],
                          'description_2': bank_data[index][3],
                          'description_3': bank_data[index][4],
                          'type': bank_data[index][5],
              }
              if new_row['type'] == 'DEBIT':
                  new_row['amount'] = new_row['amount'] * -1
              new_bank_data.append(new_row)
  
      return new_bank_data
code_tokens: def load_csv_data_multiple_years ( path_to_data , start_year , end_year ) : bank_data = [ ] new_bank_data = [ ] for year_index in range ( start_year , end_year + 1 ) : path = path_to_data + "/" + str ( year_index ) + "/" only_files = [ f for f in listdir ( path ) if isfile ( join ( path , f ) ) ] only_files . sort ( ) for file_index in range ( 0 , len ( only_files ) ) : csv_file_name = path + "/" + only_files [ file_index ] print ( "processing %s" % csv_file_name ) with open ( csv_file_name , "r" ) as csv_file : csv_reader = csv . reader ( csv_file ) next ( csv_reader , None ) for row in csv_reader : bank_data . append ( row ) for index in range ( 0 , len ( bank_data ) ) : date_str = bank_data [ index ] [ 0 ] year = int ( date_str . split ( "/" ) [ 0 ] ) month = int ( date_str . split ( "/" ) [ 1 ] ) day = int ( date_str . split ( "/" ) [ 2 ] ) new_row = { 'date' : date ( year , month , day ) , 'amount' : float ( bank_data [ index ] [ 1 ] ) , 'description_1' : bank_data [ index ] [ 2 ] , 'description_2' : bank_data [ index ] [ 3 ] , 'description_3' : bank_data [ index ] [ 4 ] , 'type' : bank_data [ index ] [ 5 ] , } if new_row [ 'type' ] == 'DEBIT' : new_row [ 'amount' ] = new_row [ 'amount' ] * - 1 new_bank_data . append ( new_row ) return new_bank_data
short_docstring: provided the path to the data load the data but skip the
  first line because it is garbage.
short_docstring_tokens: provided the path to the data load the data but skip the first line because it is garbage .
comment: '''
          provided the path to the data load the data but skip the
          first line because it is garbage.  start_year and end_year are
          provided to give user control over how many years of data required.
      '''$SEP$# skip the first row$SEP$# now we have read the data but the format is not correct, so below$SEP$# we reformat the types to the proper type