Pandas通过pivot函数进行数据透视

2023-02-23 00:00:00 数据 函数 透视

pandas.pivot() 函数是用于在 Pandas DataFrame 对象中执行数据透视表操作的函数。数据透视表可以将数据沿着某些维度进行聚合,并以新的形式呈现。以下是一些使用 pivot() 函数的示例:

基本用法

import pandas as pd

data = {'date': ['2022-01-01', '2022-01-01', '2022-01-02', '2022-01-02'],
        'city': ['New York', 'Los Angeles', 'New York', 'Los Angeles'],
        'temperature': [15, 20, 10, 18]}

df = pd.DataFrame(data)
pivot_df = df.pivot(index='date', columns='city', values='temperature')

print(pivot_df)

在这个示例中,我们创建了一个包含日期、城市和温度的字典,然后将其转换为 Pandas DataFrame 对象。然后,我们使用 pivot() 函数以日期作为行索引、城市作为列索引、温度作为值创建了一个新的 DataFrame 对象 pivot_df。最后,我们打印了 pivot_df。

透视表中的聚合函数

import pandas as pd

data = {'date': ['2022-01-01', '2022-01-01', '2022-01-02', '2022-01-02'],
        'city': ['New York', 'Los Angeles', 'New York', 'Los Angeles'],
        'temperature': [15, 20, 10, 18]}

df = pd.DataFrame(data)
pivot_df = df.pivot(index='date', columns='city', values='temperature')
pivot_df_mean = df.pivot_table(index='date', columns='city', values='temperature', aggfunc='mean')

print(pivot_df_mean)

在这个示例中,我们创建了一个包含日期、城市和温度的字典,然后将其转换为 Pandas DataFrame 对象。然后,我们使用 pivot() 函数以日期作为行索引、城市作为列索引、温度作为值创建了一个新的 DataFrame 对象 pivot_df。接着,我们使用 pivot_table() 函数以日期作为行索引、城市作为列索引、温度作为值创建了一个新的 DataFrame 对象 pivot_df_mean,并指定了 aggfunc='mean' 表示对重复的行和列使用平均值进行聚合。最后,我们打印了 pivot_df_mean。

除了以上示例中的参数外,pivot() 函数还有许多其他可用参数,例如 fill_value、margins、dropna 等等,可根据实际需求进行调整。

相关文章