#python #pandas
Вопрос:
У меня есть следующий csv-файл, в котором я хочу отобразить каждый столбец(температура, ток и напряжение).:
Date/Time: 01/03/2021 11.15.10
Parameter [s]: 6
Time [sec]: 30
Temp[C] Cur[A] Volt[V]
------- ------- -------
-0,022468 0,00 0,00
-0,022481 0,00 0,00
-0,022582 0,00 0,00
-0,021734 0,00 0,00
-0,022541 0,00 0,00
-0,022658 0,00 0,00
-0,022723 0,00 0,00
-0,022253 0,00 0,00
-0,022048 0,00 0,00
-0,022066 0,00 0,00
-0,023073 0,00 0,00
Я попробовал следующее:
import pandas as pd
df = pd.read_csv(r'C:UsersmyUserDesktopmyFile.csv', delimiter="/t", decimal=",")
Но очень смущен, так как мой файл, как вы видите, содержит 3 столбца с одной вкладкой между col1 и и col 2 и двумя вкладками между col2 и col3. Файл также содержит первые 6 строк заголовка.
Как это можно сделать с помощью панд?
Ответ №1:
Вы можете read_csv
использовать skiprows
параметр и установить «- — — — — — — » как na_values
, чтобы его можно было легко удалить dropna
позже:
df = pd.read_csv('test.csv', sep='s ', decimal=',',
skiprows=4, na_values='-------')
df = df.dropna()
df.plot()
Выход:
Комментарии:
1. Большое спасибо. Можете ли вы также сказать мне, как мы можем построить только один конкретный столбец? df[1] или df(1) не работает
2. @user1999 Для построения столбца по имени вы можете использовать
loc
для построения столбца по имени илиiloc
для его построения по номеру:df.loc[:, col_name].plot()
илиdf.iloc[:, col_number].plot()