pandas 统计每一列存在特定值

在Python的数据分析库pandas中,我们经常需要统计每一列中存在特定值的数量,这可以通过使用pandas的一些内置函数来实现,如value_counts()isin()等,下面是一些详细的技术教学。

pandas 统计每一列存在特定值
(图片来源网络,侵删)

1、我们需要导入pandas库,如果你还没有安装pandas,可以使用pip install pandas命令进行安装。

import pandas as pd

2、创建一个简单的DataFrame,我们创建一个3×3的DataFrame:

df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

3、使用value_counts()函数统计每一列中特定值的数量,我们想要统计每一列中值为1的数量:

value_counts = df.apply(lambda x: x == 1).sum()
print(value_counts)

4、使用isin()函数过滤出包含特定值的行,我们想要找出所有A列中值为1的行:

filtered_rows = df[df['A'].isin([1])]
print(filtered_rows)

5、使用groupby()agg()函数对每一列进行分组统计,我们想要统计每一列中特定值的数量:

grouped = df.groupby(df.columns.tolist()).agg(lambda x: (x == 1).sum())
print(grouped)

6、使用pivot_table()函数创建透视表,我们想要统计每一列中特定值的数量:

pivot_table = pd.pivot_table(df, values=df.columns.tolist(), index=None, aggfunc=(lambda x: (x == 1).sum()))
print(pivot_table)

7、使用crosstab()函数创建交叉表,我们想要统计每一列中特定值的数量:

crosstab = pd.crosstab(index=df.columns.tolist(), columns=[1])
print(crosstab)

以上就是在pandas中统计每一列存在特定值的方法,这些方法可以帮助我们在处理大量数据时,快速地找到我们需要的信息,在实际使用中,你可能需要根据你的具体需求,选择合适的方法。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/473972.html

(0)
未希新媒体运营
上一篇 2024-04-14 17:18
下一篇 2024-04-14 17:19

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入