为了账号安全,请及时绑定邮箱和手机立即绑定

pandas DataFrame 中多列的按列字符串计数

pandas DataFrame 中多列的按列字符串计数

牛魔王的故事 2023-02-22 15:22:10
我有如下数据框:Name            Marks       Place               PointsJohn-->Hile     50          Germany-->Poland    1Rog-->Oliver    60-->70     Australia-->US      2Harry           80          UK                  3Faye-->George   90          Poland              4我想要一个如下所示的结果,它找到具有“-->”列的值计数并将其转置并得到如下数据框的结果:Column CountName   3Marks  1Place  1这个 df 是 eg.This datframe 是动态的并且可以在每次运行中变化,就像在第二次运行中我们可能有名称,标记,地点或名称,标记或其他任何东西,所以代码应该是动态的可以在任何 df 上运行。
查看完整描述

1 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

您可以选择对象列并按列执行计数和求和:


df.select_dtypes(object).apply(lambda x: x.str.contains('-->')).sum()


Name     3

Marks    1

Place    2

dtype: int64

另一个奇怪但有趣的方法applymap:


(df.select_dtypes(object)

   .applymap(lambda x: '-->' in x if isinstance(x, str) else False)

   .sum())


Name     3

Marks    1

Place    2

dtype: int64


查看完整回答
反对 回复 2023-02-22
  • 1 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信