关于Pandas count()与values_count()的用法及区别

关于Pandas count()与value_counts()的用法及区别

1. count()方法

count()方法用于计算DataFrame或Series中非缺失值的数量。其语法格式为:

DataFrame.count(axis=0, level=None, numeric_only=False)
Series.count()

其中,参数说明如下:

  • axis:0表示按列计算,1表示按行计算,可选,默认为0。
  • level:指定多重索引的级别,可选。
  • numeric_only:如果为True,则只统计数值类型的数据,可选,默认为False。

示例一:

import pandas as pd

data = {'name':['Tom', 'Lucy', 'Lily', 'Jane'],
        'age':[20, 19, 21, None],
        'gender':['M', 'F', 'F', None]}

df = pd.DataFrame(data)

print(df.count())

运行结果如下:

name      4
age       3
gender    3
dtype: int64

分析:该示例中,数据中有4个记录,但agegender列中各有一个缺失值,因此其计算非缺失值数量为3。

2. value_counts()方法

value_counts()方法用于计算Series中不同元素的出现次数。其语法格式为:

Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)

其中,参数说明如下:

  • normalize:如果为True,则返回每个元素出现的频率,可选,默认为False。
  • sort:如果为True,则按出现频率排序,可选,默认为True。
  • ascending:如果为False,则降序排列,可选,默认为False。
  • bins:用于离散化连续型数据。
  • dropna:如果为False,则不忽略缺失值。

示例二:

import pandas as pd

data = {'name':['Tom', 'Lucy', 'Lily', 'Jane', 'Lucy', 'Jane', 'Tom', 'Tom'],
        'age':[20, 19, 21, 19, 18, 20, 21, None],
        'gender':['M', 'F', 'F', 'F', 'M', None, 'M', 'M']}

df = pd.DataFrame(data)
s = df['name']

print(s.value_counts())

运行结果如下:

Tom     3
Lucy    2
Jane    2
Lily    1
Name: name, dtype: int64

分析:该示例中,统计了name列中的各个元素出现的次数,并按照次数从大到小排列。其中,Tom出现了3次,Lucy和Jane各出现了2次,Lily出现了1次。

3. count()和value_counts()方法的区别

  1. count()方法计算的是DataFrame或Series中非缺失值的数量,而value_counts()方法计算的是Series中不同元素出现的次数。

  2. count()方法适用于DataFrame或Series,而value_counts()方法仅适用于Series。

  3. count()方法的返回类型是整数,而value_counts()方法的返回类型是Series。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于Pandas count()与values_count()的用法及区别 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • Pandas使用的注意事项

    Pandas 基于 NumPy 构建,它遵循 NumPy 设定的一些规则。因此,当您在使用 Pandas 时,需要额外留意一些事项,避免出现一些不必要的错误。 索引 Pandas有两种主要的索引机制:整数和标签索引,需要非常注意索引的使用。 整数索引:通过整数索引进行访问数据,如果未指定索引,Pandas将默认生成一个整数索引,但当使用整数索引时,需要特别小…

    Pandas 2023年3月7日
    00
  • Python Pandas – 扁平化嵌套的JSON

    Python Pandas – 扁平化嵌套的JSON 在处理后端API等数据时,有时会遇到嵌套的JSON数据结构,为了更好地处理这些数据,我们需要对这些嵌套的JSON进行扁平化处理。本文将介绍使用Python Pandas对嵌套的JSON数据进行扁平化处理的方法。 数据来源 我们使用一组来自kaggle的数据进行示范,数据集下载地址如下: https://w…

    python-answer 2023年3月27日
    00
  • Python Pandas对缺失值的处理方法

    Python Pandas对缺失值的处理方法主要有以下几个: 删除缺失值 填充缺失值 插值法填充 下面详细介绍这三种方法的使用。 删除缺失值 删除缺失值是常用的处理缺失值的方法,如果数据集中缺失值较少,可以将含有缺失值的行或列删除,以保证结果的精准度。Pandas提供了 dropna() 函数实现删除缺失值的功能。 示例1: import pandas as…

    python 2023年5月14日
    00
  • 根据最接近的DateTime合并两个Pandas DataFrames

    根据最接近的DateTime合并两个Pandas DataFrames的完整攻略分为以下几个步骤: 步骤一:导入必要的库和数据 首先需要导入必要的库和数据,其中pandas和numpy是必需的库。 具体代码实现如下: import pandas as pd import numpy as np # 读取第一个数据集 df1 = pd.read_excel(&…

    python-answer 2023年3月27日
    00
  • 在Pandas DataFrame的每组中获取最上面的N条记录

    要在Pandas DataFrame的每组中获取最上面的N条记录,我们可以使用groupby和head方法的组合。使用groupby方法将数据按照某一列或多列进行分组,然后再使用head方法获取每组的前N条记录。 下面是具体步骤: 使用pandas库读取数据。例如,我们可以使用以下代码读取名为“data.csv”的CSV文件,并将其保存为名为“df”的Dat…

    python-answer 2023年3月27日
    00
  • Python使用matplotlib创建Gif动图的思路

    下面我将详细讲解如何使用Python使用matplotlib创建Gif动图的思路。 1. 安装必要的库 在使用Python创建Gif动图之前,我们需要先安装一些必要的库。其中,主要需要安装的有matplotlib、Pillow和imageio。 pip install matplotlib Pillow imageio 2. 创建静态图像 在创建Gif动图之…

    python 2023年6月13日
    00
  • pycharm 无法加载文件activate.ps1的原因分析及解决方法

    针对“pycharm 无法加载文件activate.ps1的原因分析及解决方法”,我准备了以下攻略: 问题分析 在使用 PyCharm 进行 Python 开发过程中,如果出现了“无法加载文件 activate.ps1”的错误,一般是 PyCharm 在执行 virtualenv 的 activate.ps1 脚本时,会出现执行策略错误,以下是可能出现问题的…

    python 2023年5月14日
    00
  • 如何用Python将数据集分成训练集和测试集

    要将数据集分成训练集和测试集,首先需要导入所需的库,包括pandas和sklearn。其中 pandas 用于处理数据,sklearn 则用于数据分离。以下是 Python 代码及详细解释: import pandas as pd from sklearn.model_selection import train_test_split # 读入数据集 dat…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部