通过字符串值选择行的最优雅方法

cod*_*eed 6 python pandas

有没有更优雅的方式来编写此代码:

df['exchange'] = frame.loc[frame['Description'].str.lower().str.contains("on wallet exchange")]
Run Code Online (Sandbox Code Playgroud)

.str两次看起来很丑。

当我逐行遍历整个数据帧时,可以使用:

if "on wallet exchange" in row['Description'].casefold():
Run Code Online (Sandbox Code Playgroud)

ank*_*_91 6

请使用case=False,也可以添加na=False安全性,因此,如果该系列包含数字(@ jezrael-谢谢)或NaN,则将其评估为False

frame.loc[frame['Description'].str.contains("on wallet exchange",case=False,na=False)]
Run Code Online (Sandbox Code Playgroud)