使用.apply替换循环的Python数据框

时间:2019-03-07 11:00:31

标签: python loops dataframe apply

对于python代码:

def filtering(price):
    global cash , stock,buyPrice,sellPrice, buy_data,sell_data,trade_price,test2
    if price.iloc[0] >price.iloc[1] and cash == True:
        buyPrice.append(price, ignore_index=True)
        cash = False
        stock = True

我正在尝试将一个数据框附加到另一个数据框。 然后我将此功能应用于:

toworkdata.apply(filtering)

问题是,buyPrice没有给我任何回报。为什么会这样?

1 个答案:

答案 0 :(得分:0)

您已为数据框分配了新值,如下所示:

def filtering(price):
    global cash , stock,buyPrice,sellPrice, buy_data,sell_data,trade_price,test2
    if price.iloc[0] >price.iloc[1] and cash == True:
        # Edit here
        buyPrice = buyPrice.append(price, ignore_index=True)
        cash = False
        stock = True