在 python 中使用行条件循环 itertuples()

在python pandas数据帧“user”中,我有以下两列:


user_id | isorg

1       | 1

2       | 0

3       | 3  

4       | 0

5       | 0

我想要itertuples() user_id只有isorg == 0,所以我写


for row in user.itertuples():

  if row.isorg == 0: continue

  #action

但是我得到这样的错误


'--------------------------------------------------------------------------- ValueError Traceback (最近的调用 last) in () 1 for row in user.itertuples(): ----> 2 if row.isorg == 0: continue 3 org = pd.DataFrame(m3twitter.infer_id(row.user_id)) 4 isorg = pd.DataFrame.from_dict(org.output.org, orient='index')。T 5 isorg = pd.concat([isorg['is-org'].apply(pd.系列)])


/usr/local/lib/python3.6/dist-packages/pandas/core/generic.py in nonzero(self) 1553 “{0}的真值是模棱两可的。1554“使用a.empty,a.bool(),a.item(),a.any()或a.all().”。格式( -> 1555 自体。类。名称 1556 ) 1557 )


ValueError:数据帧的真值是模棱两可的。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。'


如何获得正确的代码?我是python新手。


湖上湖
浏览 179回答 1
1回答

桃花长相依

请尝试以下操作for row in df[df['isorg']==0].itertuples():
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python