【发布时间】:2018-09-20 19:26:50
【问题描述】:
我有三个形状相同的数据框,如下面的人为数据所示。如果 df1 中的单元格值大于 df2 中的相应单元格值,我想遍历 df1 并将信号数据帧中每个单元格的值设置为 1。有人可以说明如何实现吗?
import pandas as pd
cols = ['ABC', 'DEF', 'GHI']
prices = [[12.22, 14.34, 98.34], [12.52, 15.34, 96.34], [13.12, 14.73, 97.47]]
prices_df1 = [[16.11, 18.12, 19.13], [16.21, 18.22, 19.23], [16.31, 18.32, 19.33]]
prices_df2 = [[12.22, 18.34, 17.34], [17.52, 18.34, 19.34], [13.12, 14.73, 16.47]]
mydates = ['09-15-2018', '09-16-2018', '09-17-2018']
signals = pd.DataFrame(index=mydates, columns=cols, data=0)
df1 = pd.DataFrame(index=mydates, columns=cols, data=prices_df1)
df2 = pd.DataFrame(index=mydates, columns=cols, data=prices_df2)
如果 df1 > df2 ,我如何将信号数据帧设置为 1
【问题讨论】:
标签: pandas dataframe iteration