gpt4 book ai didi

python - 将较短长度的 Numpy 数组连接到 Pandas Dataframe

转载 作者:行者123 更新时间:2023-12-01 03:50:42 26 4
gpt4 key购买 nike

我有一个包含 506 行的 pandas 数据框。我有一个 numpy 数组,其中包含从数据帧计算得出的 501 个元素。

我想将 numpy 数组连接到数据帧,保留数据帧的索引并以数据帧的第一个索引值开始 numpy 数组的索引。

问题在于,由于 numpy 数组的长度不同并且没有行索引的概念,因此连接操作失败。

有什么巧妙的方法可以解决这个问题吗?

最佳答案

我将从 np 数组构造一个 Series,然后构造一个新的 Series 但传递目标 df 的索引,这有效地重新索引现有的 Series ,在没有行值的地方引入 NaN 值,这将与目标 df 正确对齐:

In [51]:    
df = pd.DataFrame(np.random.randn(5,3), columns=list('abc'))
s = pd.Series(np.arange(3))
s1 = pd.Series(s, index=df.index)
s1

Out[51]:
0 0.0
1 1.0
2 2.0
3 NaN
4 NaN
dtype: float64

In [53]:
df['d'] = s1
df

Out[53]:
a b c d
0 0.990381 2.583867 0.018435 0.0
1 0.867695 -0.958220 -0.351783 1.0
2 0.476210 -1.015887 1.285303 2.0
3 -0.198863 -2.514740 1.228772 NaN

关于python - 将较短长度的 Numpy 数组连接到 Pandas Dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38309692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com