【发布时间】:2022-01-11 22:55:28
【问题描述】:
我有 3 个站 TemmpDict 的每日温度数据字典。键是站名,值是温度数据系列。
我想遍历这个字典并创建一个数据框,其中包含每个站的 tmax 数据和平均 tmax 值。我尝试使用以下循环来做到这一点:
d=[]
for j in TempDict:
df=TempDict[j]
df.tmax=df.tmax.apply(pd.to_numeric,errors='coerce')
d.append((df.tmax,df.tmax.mean()))
LargeFrame=pd.DataFrame(d,columns=('tmax','meanmax'),index=StationList)
当我打印 LargeFrame 时,这似乎有效。
但是当我循环并尝试绘制每个站点的 tmax 数据时,我得到“TypeError:没有要绘制的数字数据”
for j in LargeFrame:
LargeFrame.tmax.plot()
如何将这些数据存储在数据框中,以便我仍然可以绘制它?
【问题讨论】:
-
运行
LargeFrame.dtypes会看到哪些数据类型? -
tmax:对象和 meanmax:float64。我试过“LargeFrame['tmax']=LargeFrame['tmax'].astype(float)”但得到“ValueError: setting an array element with a sequence。”
-
所以下一个错误可以参考下面的link。它应该是你需要的。
-
但是我将如何修复我的代码?我知道这是一个系列,但不知道该怎么办
-
你能发一个sample of your data吗?人们会更容易回答这个问题。不是我,因为我已经完成了这一天,而是其他人:)
标签: python pandas dataframe numpy