pandas pivot table

pandas pivot table

pandas pivot table

在数据处理和分析中,pivot table 是一个常用的工具,可以帮助我们对数据进行透视分析和汇总统计。在 Python 中,pandas 库提供了丰富的功能来创建和操作 pivot table。本文将详细介绍 pandas 中 pivot table 的用法和应用场景。

什么是 pivot table

pivot table 是一种数据汇总工具,可以按照一个或多个键对数据进行聚合操作,然后根据这些键重新排列数据,以便更方便地进行分析。在 Excel 中,pivot table 是非常常见的功能,在 pandas 中也有类似的功能。

如何创建 pivot table

在 pandas 中,可以使用 pivot_table() 方法来创建 pivot table。下面是一个简单的示例:

import pandas as pd

data = {
    'Date': ['2022-01-01', '2022-01-01', '2022-01-02', '2022-01-02'],
    'City': ['Beijing', 'Shanghai', 'Beijing', 'Shanghai'],
    'Temperature': [1, 2, 3, 4],
    'Humidity': [10, 20, 30, 40]
}

df = pd.DataFrame(data)

pivot = pd.pivot_table(df, values=['Temperature', 'Humidity'], index='Date', columns='City')

print(pivot)

运行上面的代码,可以得到如下的输出:

           Humidity           Temperature          
City        Beijing Shanghai     Beijing Shanghai
Date                                              
2022-01-01        10       20          1        2
2022-01-02        30       40          3        4

在这个示例中,我们使用 pivot_table() 创建了一个 pivot table,以日期为索引,城市为列,温度和湿度为值。通过 pivot table,我们可以方便地比较不同日期和城市的温度和湿度情况。

pivot table 的参数

pivot_table() 方法有很多参数可以调整,下面是一些常用的参数:

  • values:指定要聚合的数值列
  • index:指定要作为行索引的列
  • columns:指定要作为列索引的列
  • aggfunc:指定聚合函数,可以是 ‘mean’、’sum’、’max’、’min’ 等
  • fill_value:指定缺失值填充的值
  • margins:是否显示汇总统计信息

pivot table 的高级用法

除了基本用法,pivot table 还有一些高级用法,可以帮助我们更灵活地处理数据。下面是一些示例代码:

添加总计行和列

pivot = pd.pivot_table(df, values=['Temperature', 'Humidity'], index='Date', columns='City', margins=True)

print(pivot)

添加汇总统计信息

pivot = pd.pivot_table(df, values=['Temperature', 'Humidity'], index='Date', columns='City', margins=True, aggfunc='mean')

print(pivot)

处理缺失值

data = {
    'Date': ['2022-01-01', '2022-01-01', '2022-01-02'],
    'City': ['Beijing', 'Shanghai', 'Beijing'],
    'Temperature': [1, 2, None],
    'Humidity': [10, 20, 30]
}

df = pd.DataFrame(data)

pivot = pd.pivot_table(df, values=['Temperature', 'Humidity'], index='Date', columns='City', fill_value=0)

print(pivot)

总结

pivot table 是一个非常有用的数据分析工具,可以帮助我们对数据进行透视分析和汇总统计。在 pandas 中,使用 pivot_table() 方法可以轻松创建和操作 pivot table。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程