gpt4 book ai didi

python - 为什么 df ["ColumA"] = df_2 ["ColumnB"] 没有按预期工作?

转载 作者:太空宇宙 更新时间:2023-11-03 13:13:22 25 4
gpt4 key购买 nike

给定两个DataFrame:

#df1
value Symbol Date Type Value
1109914 AUD 2016-01-29 value 64587.9121
1109949 CAD 2016-01-29 value 65357.1429
1109970 CHF 2016-01-29 value 111881.8681
1110012 DX 2016-01-29 value 91256.4103

#df2
volas Symbol Date Type Value
1109915 AUD 2016-01-29 vola 518.5091
1109950 CAD 2016-01-29 vola 360.9474
1109971 CHF 2016-01-29 vola 767.1880
1110013 DX 2016-01-29 vola 495.8913
1110041 EUR 2016-01-29 vola 876.6861
1110062 GBP 2016-01-29 vola 462.6425

如果我想从 df2 添加一个列到 df1,自然地,我会尝试这个:

df1["volas"] = df2["Value"]

但是,这会返回一个具有 nan 值的系列(因此会用这样的值填充新列):

1109921   NaN
1110089 NaN
1110138 NaN
1110159 NaN
1110257 NaN
1110450 NaN
1110618 NaN
1110667 NaN
1110688 NaN

但是,如果我这样做:

market_values['Volas'] = [i for i in market_volas.Value]

值按预期分配。

为什么?我根本看不出问题出在哪里,特别是因为我的初始尝试被建议 here .

最佳答案

df1 中的 indexdf2 中的 index 不同。

如果length od indexes 相等,可以使用values :

df1["volas"] = df2["Value"].values
print (df1)
value Symbol Date Type Value volas
0 1109914 AUD 2016-01-29 value 64587.9121 518.5091
1 1109949 CAD 2016-01-29 value 65357.1429 360.9474
2 1109970 CHF 2016-01-29 value 111881.8681 767.1880
3 1110012 DX 2016-01-29 value 91256.4103 495.8913

关于python - 为什么 df ["ColumA"] = df_2 ["ColumnB"] 没有按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37435255/

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