我有2个数据帧:
df.head()
Out[2]:
Unnamed: 0 Symbol Date Close
0 4061 A 2016-01-13 36.515889
1 4062 A 2016-01-14 36.351784
2 4063 A 2016-01-15 36.351784
3 4064 A 2016-01-19 36.590483
4 4065 A 2016-01-20 35.934062
以及
dfw.head()
Out[3]:
Symbol Weight
0 A (0.000002)
1 AA 0.000112
2 AAC (0.000004)
3 AAL 0.000006
4 AAMC 0.000002
问题: 不是每个符号如果df在dfw中都有权重。如果没有,我想把它从我的新数据帧(它的所有日期)。如果符号在dfw中,我想将weight in与df合并,这样每行都有symbol、date、close和weight。我尝试了以下方法,但得到了NaN值。我也不知道如何删除所有符号没有重量,即使我是成功的。你知道吗
dfall = df.merge(dfw, on='Symbol', how='left')
dfall.head()
Out[14]:
Unnamed: 0 Symbol Date Close Weight
0 4061 A 2016-01-13 36.515889 NaN
1 4062 A 2016-01-14 36.351784 NaN
2 4063 A 2016-01-15 36.351784 NaN
3 4064 A 2016-01-19 36.590483 NaN
4 4065 A 2016-01-20 35.934062 NaN
我不知道你为什么会得到这些价值观。也许你的符号里有空格?您可以通过:
dfw['Symbol'] = dfw.Symbol.str.strip()
对df
执行同样的操作。你知道吗相关问题 更多 >
编程相关推荐