Python 重新采样dataframe正在删除列

Python 重新采样dataframe正在删除列,python,pandas,Python,Pandas,上面的数据帧有一个日期时间索引。我将其重新采样如下: 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-2

上面的数据帧有一个日期时间索引。我将其重新采样如下:

                    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')
为什么“Val”列消失了?所有其他的专栏看起来也一团糟。有关数据帧来源的说明,请参阅

--编辑 根据@unutbu的问题:

                    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
--编辑:以上数据框的csv文件全文如下:


出于某种原因,
Val
列可能没有数字数据类型,所有非数字(例如
object
dtype)列都将在
重采样中删除

要检查,只需查看
df.info()


要将其转换为数字列,您可以使用
astype(float)
convert_objects
pd.To_numeric
从v0.17开始)。

重采样df的值为2008年1月和年份,而原始df仅在2000年2月开始。没错,不确定重采样df的值如何为2008年。原始df开始于2000年2月。在重新采样之前,您是否尝试过简单打印(df)?看起来这些是不同的数据帧。重采样不应该有这种效果。我有,在重采样之前它是可以的。请将
df.reset\u index().发布到dict('list')
,这样我们可以重现问题。
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]}