Python数据分析(三)—— Pandas数据统计

简介: Python数据分析(三)—— Pandas数据统计


本文主要介绍Pandas中的数据统计方法,部分使用的数据集为MovieLen 1M版本(m1-1m.zip)数据集。

import numpy as np
import pandas as pd
#加载数据集
fpath = r'datasets//'
usercol = ['uid','sex','age','occupation','zip']
ratcol = ['uid','mid','rating','timestamp']
movcol = ['mid','title','genres']
users = pd.read_table(fpath+'users.dat',sep='::',header=None, names=usercol,engine='python')
ratings = pd.read_table(fpath+'ratings.dat',sep='::',header=None, names=ratcol,engine='python')
movies = pd.read_table(fpath+'movies.dat',sep='::',header=None,names=movcol,engine='python')
data = pd.merge(pd.merge(users,ratings),movies)

1 简单统计

unique计算Series中的唯一值数组,按发现的顺序返回。

value_counts返回一个Series,索引为唯一值,值为频率,按计数值降序排列。

data.age.unique()

data.age.value_counts()

2 groupby

分组运算的过程被描述为split-apply-combine:数据根据提供的一个或多个键被拆分(split)为多组,拆分操作在对象的特定轴上执行的;然后将一个函数应用(apply)到各个分组并产生一个新值;最后所有函数的执行结果会被合并(combine)到最终的结果对象中。

import pandas as pd 
import numpy as np
df = pd.DataFrame({'col1':['a','a','b','b','a'],
                   'col2':['one','two','one','two','one'],
                   'data1': np.random.randn(5),
                   'data2': np.random.randn(5)})
df

groupby方法形成一个Groupby对象,没有进行任何实际计算,只是含有一些有关分组键的中间数据,即该对象已包含接下来对各分组执行运算所需的一切信息。

grouped = df.groupby(['col1','col2'])
grouped.mean()

3 pivot table

透视表(pivot table)根据一个或多个键对数据进行聚合,并根据行和列上的分组键将数据分配到各个矩形区域中。pivot_table()函数除能为groupby提供便利外,还可以添加分项小计(margins)。

pivot_table(values,index,columns,aggfunc,fill_value)

主要参数如下:

  • values:数据透视表中的值
  • index:数据透视表中的行
  • columns:数据透视表中的列
  • aggfunc:统计函数(应用到values上)
  • fill_value:替换NA值
df.pivot_table(index='col1',aggfunc='mean')
#df.groupby(['col1']).mean()

df.pivot_table('data1',index='col1',aggfunc='mean')
#df.groupby(['col1']).data1.mean()

df.pivot_table(['data1','data2'],index='col2',columns='col1',aggfunc='mean')
#df.groupby(['col1','col2']).mean().unstack()

相关文章
|
15天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
25天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
【10月更文挑战第42天】本文是一篇技术性文章,旨在为初学者提供一份关于如何使用Python进行数据分析的入门指南。我们将从安装必要的工具开始,然后逐步介绍如何导入数据、处理数据、进行数据可视化以及建立预测模型。本文的目标是帮助读者理解数据分析的基本步骤和方法,并通过实际的代码示例来加深理解。
36 3
|
18天前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
55 4
数据分析的 10 个最佳 Python 库
|
22天前
|
存储 数据可视化 数据挖掘
使用Python进行数据分析和可视化
本文将引导你理解如何使用Python进行数据分析和可视化。我们将从基础的数据结构开始,逐步深入到数据处理和分析的方法,最后通过实际的代码示例来展示如何创建直观的数据可视化。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。让我们一起探索数据的世界,发现隐藏在数字背后的故事!
|
19天前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
23天前
|
数据采集 存储 数据可视化
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
Python数据分析:揭秘"黑神话:悟空"Steam用户评论趋势
|
25天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析和可视化
【10月更文挑战第42天】本文将介绍如何使用Python进行数据分析和可视化。我们将从数据导入、清洗、探索性分析、建模预测,以及结果的可视化展示等方面展开讲解。通过这篇文章,你将了解到Python在数据处理和分析中的强大功能,以及如何利用这些工具来提升你的工作效率。
|
25天前
|
数据采集 数据可视化 数据处理
Python数据科学:Pandas库入门与实践
Python数据科学:Pandas库入门与实践
|
23天前
|
数据采集 数据可视化 数据挖掘
掌握Python数据分析,解锁数据驱动的决策能力
掌握Python数据分析,解锁数据驱动的决策能力
|
25天前
|
数据采集 数据可视化 数据挖掘
Python数据分析:Pandas库实战指南
Python数据分析:Pandas库实战指南