【发布时间】:2017-11-18 23:30:01
【问题描述】:
我有这个数据帧 (df1),我想根据它将数据输入另一个数据帧 (df2)。如果 df1 的值大于 54,我希望 df2 中的同一行在“Buy”列下为“Buy”,如果不是,我希望它在“sell”列下为“Sell”。我知道这听起来很简单,但由于某种原因,当我使用下面的代码执行此操作时,它会根据 df1 中的最后一个值设置 df2 中的所有值。
for x in df1['A']:
if x > 54:
df2['Buy'] = "Buy"
else:
df2['Sell'] = "Sell"
df1:
Date
2011-08-26 53.024284
2011-08-29 55.454285
2011-08-30 55.464287
2011-08-31 55.795715
2011-09-01 55.117142
2011-09-02 53.534286
df2:
Buy Hold Sell
Date
2011-08-26 0.0 0.0 0.0
2011-08-29 0.0 0.0 0.0
2011-08-30 0.0 0.0 0.0
2011-08-31 0.0 0.0 0.0
2011-09-01 0.0 0.0 0.0
2011-09-02 0.0 0.0 0.0
【问题讨论】: