使用列表理解从 pandas 数据框中的字段创建列表

Create a List from fields in a pandas dataframe using list comprehension

您好,我正在努力从以下 DF 创建列表对象:

   In [102]: trd 
    Out[102]: 
        side    chg
    EWJ  BUY  100.0
    IEV  BUY   70.0
    VGK  SELL  30.0

期望的输出:

[MarketOrder('BUY',100), MarketOrder('BUY',70), MarketOrder('SELL',30)]

尝试了以下但没有成功。

orders = [MarketOrder(str(trd['side']), trd['chg']) for rows in trd.index]

我做错了什么?

使用zip:

orders = [MarketOrder(x[0], x[1]) for x in zip(trd['side'], trd['chg'])]

或:

orders = [MarketOrder(x, y) for x,y in zip(trd['side'], trd['chg'])]

在您的列表理解中,在每个循环中创建使用 MarketOrdersidechg len(trd.index) 次。