我正试着用numpy和plotly绘制一些图表。我从一个包含所有我需要的趋势的csv文件中获取数据。我想绘制和分析包含在列1-80沿着时间框架(“日期”)的值,这是我写的脚本做到这一点。
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import seaborn as sns
import plotly.express as px
ztec = pd.read_csv(r'C:\Users\tashkpa\Desktop\Работа\ТЭЦ\Сырые данные ЗТЭЦ\данные для python.csv')
ztec=ztec.set_index('Date')
print(ztec)
fig=plt.figure()
ax=fig.add_subplot()
sns.set_style("ticks", {'grid.linestyle': '--'})
sns.lineplot(x=ztec['Date'], y=ztec['01'])
plt.grid(True, which="both", ls="--", c='gray')
plt.plot
我的数组示例如下所示:
'Date';'01';'02';'03';'04';'05';'06';'07';'08';'09';'10';'11';'12';'13';'14';'15';'16';'17';'18';'19';'20';'21';'22';'23';'24';'25';'26';'27';'28';'29';'30';'31';'32';'33';'34';'35';'36';'37';'38';'39';'40';'41';'42';'43';'44';'45';'46';'47';'48';'49';'50';'51';'52';'53';'54';'55';'56';'57';'58';'59';'60';'61';'62';'63';'64';'65';'66';'67';'68';'69';'70';'71';'72';'73';'74';'75';'76';'77';'78';'79';'80';;;;;;;;;;;;;
01/01/2021 02:00:00;0.791;7.019;199.265;183.586;506.253;5.641;41.729;212.521;0.528;0.115;32.356;35.264;0.788;208.541;0.356;0.348;0.087;3.887;3.483;8.784;31.930;13.237;24.296;13.552;23.546;36.840;36.978;218.913;35.373;0.860;0.147;0.319;115.694;0.785;7.064;201.466;183.316;509.751;5.721;42.600;210.235;0.563;12.276;60.000;135.939;0.784;206.678;0.347;0.334;0.066;3.959;4.138;4.821;8.027;13.494;18.367;13.702;18.536;30.446;31.199;243.470;1.908;0.901;2.082;0.216;106.911;3.681;-1.484;205.884;284.659;146.202;3.681;-9.315;56.252;54.483;40195.012;39724.953;102.121;128.471;102.573;;;;;;;;;;;;;
下面是Python触发的异常。
C:\Users\tashkpa\Anaconda3\python.exe C:/Users/tashkpa/PycharmProjects/pythonProject/zteccsv.py
Traceback (most recent call last):
File "C:/Users/tashkpa/PycharmProjects/pythonProject/zteccsv.py", line 7, in <module>
ztec=ztec.set_index('Date')
File "C:\Users\tashkpa\AppData\Roaming\Python\Python38\site-packages\pandas\core\frame.py", line 4724, in set_index
raise KeyError(f"None of {missing} are in the columns")
KeyError: "None of ['Date'] are in the columns"
如何绕过此错误?
2条答案
按热度按时间bvhaajcl1#
pd.read_csv
使用sep=','
的默认值pd.read_csv
时使用sep=';'
,因为值分隔符是;
ztec=ztec.set_index('Date')
将Date
列设置为索引,因此在绘制sns.lineplot(x=ztec.index, y=ztec['01'])
时必须将ztec.index
用作x
fsi0uk1n2#
我也收到了这个错误,但对我来说,我试图设置索引为'日期',它已经。
所以,一旦索引被设置为字段例如:'Date',相同的代码将显示类似的错误。