[英]Resampling pandas dataframe is deleting column
Val ts year doy interpolat region_id
2000-02-18 NaN 950832000 2000 49 NaN 19987
2000-03-05 NaN 952214400 2000 65 NaN 19987
2000-03-21 NaN 953596800 2000 81 NaN 19987
2000-04-06 0.402539365 954979200 2000 97 NaN 19987
2000-04-22 0.54021746 956361600 2000 113 NaN 19987
上述數據幀具有日期時間索引。 我重新取樣就像這樣:
df = df.resample('D')
但是,此重新采樣會導致此數據幀:
ts year doy interpolat region_id
2000-01-01 1199180160 2008 1 1 19990
2000-01-02 NaN NaN NaN NaN NaN
2000-01-03 NaN NaN NaN NaN NaN
2000-01-04 NaN NaN NaN NaN NaN
2000-01-05 NaN NaN NaN NaN NaN
為什么'Val'欄會消失? 所有其他專欄似乎也搞砸了。 請參閱線性插入pandas數據幀中的缺失行,以獲取數據幀來源的說明。
--EDIT基於@ unutbu的問題:
df.reset_index().to_dict('list')
{'index': [Timestamp('2000-02-18 00:00:00'), Timestamp('2000-03-05 00:00:00'), Timestamp('2000-03-21 00:00:00'), ... '0.670709965', '0.631584375', '0.562112815', '0.50740686', '0.4447712', '0.47880806', nan, nan]}
- 編輯:上述數據框的csv文件完整地在這里:
由於某種原因, Val
列可能沒有數字dtype,並且在resample
中刪除所有非數字(例如, object
dtype)列。
要查看,請查看df.info()
。
要將其轉換為數值列,你可以使用astype(float)
或convert_objects
( pd.to_numeric
從v0.17開始)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.