繁体   English   中英

在熊猫数据框python上使用Apply函数时如何中断?

[英]How to interrupt while using apply function on a pandas dataframe python?

有没有一种方法可以使用apply函数为pandas dataframe计算一个新列,但是会根据某些条件“中断”它。

假设我有一个包含2000行的数据框,并且我的标准(取决于先前计算的应用值)在第1000个处变为false 计算下一个1000是浪费的,我希望pandas在第1000个之后停止“应用”,并将目前的计算结果还给我。

那可能吗 ?

有条件使用

df['new']=df['old'].apply(lambda x: <calculation> if <condition>(ex : x == 0) else x )

要么

df.loc[df['col']=='value','col']= df.loc[df['col']=='value','col'].apply(lambda x: "new_value"  )

您可以应用在只想要行。

假设您的索引是自动递增且连续的,如果没有,则可以始终执行reset_index来实现。 或者,您可以选择所需的任何条件,而不是前1000行。

idx = df.index < 1000 # index of 1000 items

df.loc[idx, '<yourcolums>'] = df[idx].apply(...)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM