使用for循环在pandas中创建新列?

时间:2019-10-18 11:08:53

标签: python-3.x pandas for-loop

我想使用另一列中多个值的组合在数据框中创建一个新列。

我尝试了以下代码,但似乎不起作用。我看不到操作员正在工作。

enter code here

lst = [df1]
for column in lst:
     column.loc[(column["booking_text"] in ['SEPA-Gutschrift','SEPA-Cash 
      Management Gutsch','FASTER PAYMENTS','SCHECK-EV','BACS CREDIT','POS 
      Gutschrift','Scheckeinreichung e.V.'])
      & (column["debit_credit"] == 'Credit'), "financial_category"] = 'Reveunue_Credit'

      df1['financial_category'] = df1['financial_category']

ValueError:系列的真值不明确。使用a.empty,a.bool(),a.item(),a.any()或a.all()。

1 个答案:

答案 0 :(得分:0)

lst = [df1]
for column in lst:
 column.loc[(column["booking_text"].isin(['SEPA-Gutschrift','SEPA-Cash Management 
 Gutsch','FASTER PAYMENTS', 'SCHECK-EV','BACS CREDIT','POS 
 Gutschrift','Scheckeinreichung e.V.'])) & (column["debit_credit"] == 'Credit'), 'financial_category'] = 'Reveunue_Credit'
相关问题