获取NaN将熊猫数据框转换为系列



我正在尝试根据接受的答案将pandas数据帧转换为系列

为多列转换数据帧为系列然而,我得到NaN在我的整数列'y'。

下面是我的代码:
data = [['2021-10-14 18:12:00.000', '22811316'],['2021-10-14 18:42:00.000', '22700704']]
df = pd.DataFrame(data, columns = ['ds', 'y'])
series = pd.Series(df.y, index=df.ds)

印刷系列给我:

ds
2021-10-14 18:12:00.000    NaN
2021-10-14 18:42:00.000    NaN
Name: y, dtype: object

我错过了什么?

我可以在pandas.Series()中找到答案。使用DataFrame Columns创建返回NaN数据条目

技巧是使用:

series = pd.Series(df.y.values, index=df.ds)

如果只取序列df.y,将得到一个具有的序列从0、1、…开始的索引

print(df.y)
0    22811316
1    22700704
Name: y, dtype: object

这些索引与您要用作索引的列ds的值不匹配。
因此,当您使用index=...创建新系列时,您可能会拥有所有NaN

为了将y列的值放入新的序列中,您必须使用to_numpy()

仅取其值
series = pd.Series(df.y.to_numpy(), index=df.ds)
print(series)
ds
2021-10-14 18:12:00.000    22811316
2021-10-14 18:42:00.000    22700704
dtype: object

相关内容

  • 没有找到相关文章

最新更新