繁体   English   中英

Pandas 根据名称计算列值

[英]Pandas counting column values based on name

10  C   X   -
11  C   X   X
12  C   X   -
13  C   X   -
14  C   X   -
15  C   X   -
16  R   -   -
17  R   -   -
18  R   -   -
19  L   -   -
20  M   -   -
21  L   -   -
22  S   -   -
23  S   -   -
24  S   -   -
25  S   -   -
26  S   -   -
27  S   -   -
28  S   -   -
29  L   -   -
30  L   -   -
31  M   -   -
32  M   -   -
33  C   X   -

我有这个数据集,我想计算每个字母值有多少个 X。

所以对于 C 我在第一列和第二列中有这么多 X

将列col1转换为索引,通过DataFrame.eq掩码的 DataFrame.eq 比较所有其他列,转换为整数和计数用于每个第一级的sum (此处为col1 ):

df1 = df.set_index('col1').eq('X').astype('int').sum(level=0).reset_index()
print (df1)
  col1  col2  col3
0    C     7     1
1    R     0     0
2    L     0     0
3    M     0     0
4    S     0     0

暂无
暂无

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

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