Как при создании DataFrame из `pd.read_csv` пропустить первые строки?
При создании DataFrame из pd.read_csv надо пропустить первые 13 строк, чтобы заголовок был: Pen Number; Date; Value.
Код такой:
events_data = pd.read_csv('D:\Trend.csv', sep=';', decimal=',',skiprows=range(0, 12))
Выход:
Unnamed: 0 Unnamed: 1 Unnamed: 2 Unnamed: 3
0 NaN NaN NaN NaN
Пример CSV:
Trend Name; Number of Curves; DateFrom; DateTo
"XXXXXXXX";10;"2019-10-01 14:30:03";"2019-10-08 14:30:03"
Pen Number; Pen Name; Minimum; Maximum
0;"Q0312";0,000000;100000,000000
1;"Q0323";0,000000;200000,000000
2;"Q0411";0,000000;100000,000000
3;"Т0533ВВ";-50,000000;200,000000
4;"Т0534АВ";-50,000000;200,000000
5;"Т0534ВВ";-50,000000;200,000000
6;"Т0536";0,000000;100,000000
7;"Т0555";0,000000;200,000000
8;"F0411";0,000000;180,000000
9;"F0222";0,000000;9,000000
Pen Number; Date; Value
0;"2019-10-01 14:30:03";88296,023438
0;"2019-10-01 14:38:45";88310,406250
0;"2019-10-01 14:38:46";88310,421875
0;"2019-10-01 14:47:29";88324,812500
0;"2019-10-01 14:47:29";88324,820313
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
Воспользуйтесь параметром skiprows=13:
pd.read_csv(..., skiprows=13)
Для приведенного в вопросе примера:
In [50]: pd.read_csv(r"C:\Temp\test.csv", skiprows=13, sep=";",
skipinitialspace=True, parse_dates=["Date"])
Out[50]:
Pen Number Date Value
0 0 2019-10-01 14:30:03 88296,023438
1 0 2019-10-01 14:38:45 88310,406250
2 0 2019-10-01 14:38:46 88310,421875
3 0 2019-10-01 14:47:29 88324,812500
4 0 2019-10-01 14:47:29 88324,820313
UPDATE: ваш файл имеет кодировку 'utf-16-le' - именно поэтому у вас не получалось его правильно прочитать:
In [57]: pd.read_csv(r"C:\download\WinCC_OnlineTrendCtrl_2020_02_25_14_08_31.csv",
skiprows=13,
sep=";",
skipinitialspace=True,
encoding="utf-16-le") # <---- NOTE !!!
Out[57]:
Pen Number Date Value
0 0 2020-02-22 14:05:00 118001,453125
1 0 2020-02-22 14:08:43 118005,648438
2 0 2020-02-22 14:08:44 118005,664063
3 0 2020-02-22 14:12:28 118009,875000
4 0 2020-02-22 14:12:28 118009,882813
... ... ... ...
22699 9 2020-02-25 13:54:33 0,617188
22700 9 2020-02-25 13:58:04 0,617188
22701 9 2020-02-25 13:58:43 0,638021
22702 9 2020-02-25 14:01:19 0,617188
22703 9 2020-02-25 14:04:33 0,638021
[22704 rows x 3 columns]
