Я пытаюсь прочитать несколько файлов CSV во фрейм данных Pandas.CSV не разделены запятыми - поля разделяются точкой с запятой ";".
Мой код основан на ответах здесь .
Мои данные - всев определенном подкаталоге: /data/luftdaten/5331
Это то, что я запускаю:
import glob
import pandas as pd
path =r'data/luftdaten/5331' # use your path
filenames = glob.glob(path + "/*.csv")
count_files = 0
dfs = []
for filename in filenames:
if count_files ==0:
dfs.append(pd.read_csv(filename, sep=";"))
count_files += 1
else:
dfs.append(pd.read_csv(filename, sep=";", skiprows=[0]))
count_files +=1
big_frame = pd.concat(dfs, ignore_index=True)
Я использую count_files
для мониторинга, если это первый CSV - в этом случае я импортирую заголовки,В противном случае он пропускает заголовки.
Код выполняется ОК.
Если я запускаю его с одним файлом в этом каталоге, все в порядке:
big_frame.info()
Вывод:
RangeIndex: 146 entries, 0 to 145
Data columns (**total 12 column**s):
sensor_id 146 non-null int64
sensor_type 146 non-null object
etc......
Если я запускаю его с двумя или более файлами в каталоге, то с самого начала происходит ошибка.
Вывод с 4 файлами:
RangeIndex: 1893 entries, 0 to 1892
Data columns (total **33 columns**):
-2.077 1164 non-null float64
-2.130 145 non-null float64
2.40 145 non-null float64
Запускbig_frame.head()
в одной версии CSV дает это, с правильными именами столбцов:
![output from importing single CSV](https://i.stack.imgur.com/rvtyi.png)
При запуске того же самого с четырьмя импортированными файлами мне это:
![output from importing 4 CSV files (cropped right)](https://i.stack.imgur.com/j7DCV.png)
Есть ли что-то очевидное, что я делаю, что вызывает увеличение не только количества строк, но и столбцов?
Ваше руководство будет с благодарностью!