[英]Counting Occurrences by ROW in Python Pandas
假设我有一个如下所示的数据框:
Select a BW Speed Router Name router_max OK or REPLACE? Firewall Name firewall_max OK or REPLACE?
0 50 XYZ 30.0 REPLACE X 30.0 REPLACE
1 50 XYZ 30.0 REPLACE X NaN N/A
2 50 XYZ 30.0 REPLACE X 30.0 REPLACE
我需要一个额外的列来显示该行中出现“REPLACE”的次数(在这种情况下,它是需要替换的项目总数)。
任何帮助将不胜感激......我知道这可能是非常基本的东西。
df['new_column'] = df.apply(lambda x: x.str.contains("REPLACE").sum(), axis=1)
将stack
和groupby
与str_contains
一起使用以避免使用 apply。
df["replace_check"] = (
df.stack().to_frame()[0].str.contains("REPLACE").groupby(level=0).sum()
)
print(df)
Select a BW Speed Router Name router_max OK or REPLACE? \
0 50 XYZ 30.0 REPLACE
1 50 XYZ 30.0 REPLACE
2 50 XYZ 30.0 REPLACE
Firewall Name firewall_max OK or REPLACE? replace_check
0 X 30.0 REPLACE 2.0
1 X NaN N/A 1.0
2 X 30.0 REPLACE 2.0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.