在最近合并的DataFrame上应用 Pivot_Table 后,我意识到我得到的列不是我期望的。
基本上,而不是得到以下输出:
df4.Ammonia:
NAN
NAN
NAN
.
.
我得到以下输出:
df4.Ammonia:
Time
2013-11-01 00:00:00 NaN
2013-11-01 01:00:00 NaN
2013-11-01 02:00:00 NaN
.
.
每次检查列时,列索引似乎都会出现!
这是我的代码:
Mi_Pollution['Measurement'] = Mi_Pollution['Measurement'].astype(float)
Mi_Pollution['Sensor_ID'] = Mi_Pollution['Sensor_ID'].astype(float)
Mi_Pollution['Time']=list(Mi_Pollution.index)
Mi_Pollution.reset_index()
df3 = Mi_Pollution.merge(Pollutants, on='Sensor_ID', how='left')
然后:
df4 = df3.pivot_table(index=['Time'],values='Measurement',columns='Sensor_Type')
任何建议都会非常感谢,谢谢。
答案 0 :(得分:0)
期望得到Datetimeindex
,因为index
中参数pivot_table
之后的列创建了返回的DataFrame
的索引-这里time
列创建了{{ 1}}。
通过以下方式进行检查:
DatetimeIndex
如果需要默认索引,请使用DataFrame.reset_index
将DattimeIndex转换为新列,并用print (df4.index)
和DataFrame.rename_axis
替换以删除列名(RangeIndex
字符串):
Time