我有以下数据框(sim_2005):
Date ELEM1 ELEM2 ... ELEM1133
2005-01-01 0.021 2.455 ... 345.2
2005-01-02 0.321 2.331 ... 355.1
... ... ... ... ...
2005-12-31 0.789 3.456 ... 459.9
[365 rows x 1133 columns]
with Date
成为一个pandas.tseries.index.DatetimeIndex
。我在帮助下改造了它@ami-tavory使用pandas的melt函数:
sim_2005_melted = pd.melt(sim_2005, id_vars=sim_2005.index.name, value_vars=list(sim_2005.columns.values), var_name='ELEM', value_name='Q_sim').sort(columns='Date')
结果是:
ID Date ELEM Q_sim
1 NaN ELEM1 0.021
2 NaN ELEM1 0.321
...
366 NaN ELEM2 2.455
367 NaN ELEM2 2.331
...
402983 NaN ELEM1133 345.2
402984 NaN ELEM1133 355.1
由于某种原因,日期时间索引未传输,并且该列填充了 NaN。有什么帮助或想法出了什么问题吗?
假设Date
是 DataFrame 的索引,您可以在融化的 DataFrame 中获取日期列,如下所示:
sim_2005_melted['Date'] = pd.concat([sim_2005.reset_index().Date
for _ in range(sim_2005.shape[1])],
ignore_index=True).values
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)