pandas中pivot_table透视表

官方文档

pandas.pivot_table(data, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All')

data : 创建透视表的dataframe

values : 要聚合的值, optional

index : 要聚合的index

columns : 要聚合的columns

aggfunc :聚合的方式, default numpy.mean

fill_value : 用来替换透视表的缺失值scalar, default None

margins : 添加所有行,列,例如在后面加个“总和”boolean, default False

dropna : 不要包含条目都是NaN的列boolean, default True

margins_name : 在边距为True时将包含总计的行/列的名称。string, default ‘All’

例子:

1、各种index,column写与不写

 df = pd.DataFrame({"A": ["foo", "foo", "foo", "foo", "foo",
...                          "bar", "bar", "bar", "bar"],
...                    "B": ["one", "one", "one", "two", "two",
...                          "one", "one", "two", "two"],
...                    "C": ["small", "large", "large", "small",
...                          "small", "large", "small", "small",
...                          "large"],
...                    "D": [1, 2, 2, 3, 3, 4, 5, 6, 7]})
>>> df

这里写图片描述

table1 = pd.pivot_table(df, values='D', index=['A', 'B'],columns=['C'],
...                     aggfunc=np.sum)
table1

这里写图片描述

table2 = pd.pivot_table(df, values='D', index=['A', 'B'],
...                     aggfunc=np.sum)
table2

这里写图片描述

table3 = pd.pivot_table(df, values='D',columns=['C'],
...                     aggfunc=np.sum)
table3

这里写图片描述

2、其他参数

margins
table4 = pd.pivot_table(df, values='D', index=['A', 'B'],columns=['C'],
...                     aggfunc=np.sum,margins=True)
table4

这里写图片描述

margins_name
table5 = pd.pivot_table(df, values='D', index=['A', 'B'],columns=['C'],
...                     aggfunc=np.sum,margins=True,margins_name='total')
table5

这里写图片描述

fill_value
 df['D'][2:6] = None

这里写图片描述

table6 = pd.pivot_table(df, values='D', index=['A', 'B'],columns=['C'],
...                     aggfunc=np.sum)
table6

这里写图片描述

table6 = pd.pivot_table(df, values='D', index=['A', 'B'],columns=['C'],
...                     aggfunc=np.sum,fill_value="x")
table6

这里写图片描述

### 回答1: pandaspivot_table是一种数据透视的操作,可以将数据按照指定的行和列进行分组,并对指定的数值进行聚合计算。pivot_table可以对数据进行重塑和汇总,方便数据分析和可视化。pivot_table的参数包括index、columns、values、aggfunc等,可以根据需要进行设置。pivot_table的用法比较灵活,可以根据具体的数据分析需求进行调整。 ### 回答2: Pandas是一种数据分析工具,而pivot_table是其一个非常重要的函数之一。pivot_table可以用于数据透视的创建,它可以将数据透视成一个二维格,并且可以根据需求对数据进行排序、计算对应的行列值、连续或离散化等处理,方便用户进行更深入的分析。 pandas.pivot_table函数的基本用法是: pd.pivot_table(data, values=None, index=None, columns=None, aggfunc=‘mean’, fill_value=None, margins=False, dropna=True, margins_name='All') - data: 必需,示要进行数据透视的数据源,可以是dataframe或者Series。 - values: 可选,示需要进行聚合计算的具体列。 - index: 可选,示对数据进行透视的行,用列示多行。 - columns: 可选,示对数据进行透视的列,用列示多列。 - aggfunc:可选,示如何聚合数据,例如"sum"、"mean"、"count"、"median"、"min"、"max"等等。 - fill_value:可选,示如何填充缺失的值。 - margins:可选,示是否添加行/列边距,可以是boolean或all。 - dropna:可选,示是否删除包含缺失的行或列。 - margins_name:可选,示边距的名称。 当我们需要进一步挖掘数据时,可以使用pivot_table按需求对数据进行更深入的分析。pivot_table可以适用于各种数据类型,对于各种复杂的实际数据可提供高效的分析方式,并且可以快速生成相应的统计和图。同时,Pandas也提供多种数据分析工具,利用这些工具我们可以快速汇总数据,从而做出科学决策,为实际应用提供更多有力的支持。 ### 回答3: Pandas是我们在数据分析和数据处理过程经常使用的一个Python第三方库,而Pandaspivot_table是数据透视的具体实现。在数据处理过程,我们常常需要对大量数据进行统计和分析,并将这些数据以某种方式展示出来,以便于我们更好地理解数据背后的含义和规律。而数据透视正好可以很好地满足这一需求。 Pandaspivot_table函数的作用就是将一张Excel或CSV的数据转换成我们熟知的PivotTable格,以便于我们对数据进行统计和分析。它主要有以下几个参数: 1. index:用于分组的列名和/或时间轴的名称。 2. columns:透视列,即所有行会按此列分为不同的列组,每个组将为的一列。 3. values:需要计算的列或多列的列名。 4. aggfunc:用于聚合数据的函数,如sum、mean、count等,默认为numpy.mean。 5. fill_value:用于填充NaN的值。 6. margins:bool类型的值,示是否在添加总和行和列。 需要注意的是,Pandaspivot_table只是一个对数据进行重塑和聚合的工具,不会对源数据进行修改,只是按照我们指定的方法重新排序和统计数据。此外,在使用pivot_table时还需要注意传递的参数是否正确,并且保证数据类型的正确性,否则可能会导致数据计算结果不准确。在使用pivot_table进行数据分析时,需要综合考虑各种因素,以得到准确、可靠的数据结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值