python pandas 分类汇总用法_python数据分析之pandas常用命令整理

本文详细整理了Python数据分析库pandas的常用命令,包括数据读取、数据清洗、数据处理、数据选取、数据筛选、分类汇总及统计分析等关键操作。通过实例展示如何高效操作大型数据集。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原标题:python数据分析之pandas常用命令整理

pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使Python成为强大而高效的数据分析环境的重要因素之一。

导入pandas库:

import pandas as pd

导入Series, DataFrame:

from pandas import Series, DataFrame

pandas常用命令

读取excel文件:

df=pd.read_excel(fpath,sheet_name=name,usecols=[n,m,...])

创建数据表:

pd.DataFrame(dict, columns=dict.index, index=[dict.columnnum])

一、数据表信息查看

1.查看维度:

df.shape

2.查看数据格式

每一列数据的格式:

df.dtypes

查看某一列数据的格式:

df['列名'].dtype

3.查看数据表基本信息(列名称、数据格式、所占空间等):

df.info()

4.判断数据是否是空值:

判断整个数据表数据是否为空值:

df.isnull()

判断某一列数据是否为空值:

df['列名'].isnull()

5.查看某一列的唯一值:

df['列名'].unique()

6.查看数据表的值:

df.values

7.查看数据表索引:

df.index

8.查看列名称:

df.columns

9.查看前n行数据:

df.head(n)#默认前5行数据

10.查看后n行数据:

df.tail(n)#默认后5行数据

二、数据清洗

1.用0填充NA:

df.fillna(value=0)#生成副本,不影响原df,添加参数inplace=True修改原df

2.用列均值对列NA进行填充:

df['列名'].fillna(df['列名'].mean())

3.删除含有缺失值的行:

df.dropna()

4.更改某一列数据的数据格式:

df['列名'].astype('int')

5.更改列名称:

df.rename(columns={'原列名: '新列名'})

6.删除后出现的重复值:

df['列名'].drop_duplicates()

7.删除先出现的重复值:

df['列名'].drop_duplicates(keep='last')

8.数据替换:

df['列名'].replace('原数据', '新数据')

三、数据处理

数据读取

1.数据表合并

1.1两表合并

合并列

df_inner=pd.merge(df1,df2,how='inner')#交集,类似sql语句inner join

df_left=pd.merge(df1,df2,how='left')#类似sql语句left join

df_right=pd.merge(df1,df2,how='right')#类似sql语句right join

df_outer=pd.merge(df1,df2,how='outer')#并集

合并行

pd.concat([df1,df2],axis=0,ignore_index=True)#ignore_index=True,重置索引,默认False

1.2多表合并(合并行)

pd.concat([df1,df2,...],axis=0,ignore_index=True)

2.数据排序和排名:

2.1数据排序

df.sort_values(by=['列名'])

df.sort_values(by=['列1','列2'])

2.2数据排名

df['列名'].rank()

3.数据修改

如果c_adress列的值==‘山东汕头’,则显示为'广东',否则显示为原数据

np.where(df1['c_adress']=='广东汕头','广东',df1['c_adress'])

四、数据选取

1.选取单行:df.loc['行标签']、df.iloc[n:]

2.选取单列:df['列标签']、df.loc[:,'列标签']df.iloc[:,n]

3.选取数据区域

df.loc[['行标签1','行标签2',...],[列标签1','列标签2',...]]

df.iloc[n:m,[n,m,k,...]]

五、数据筛选

1.使用大于、小于、等于进行数据筛选

2.使用或(|)、与(&)、非(~)进行数据筛选

3.使用.isin进行数据筛选

4.使用query函数进行数据筛选

5.使用.str进行数据筛选

六、分类汇总

1.统计每一列数据中非空的数量

df.count()

2.按某字段对所有的列进行汇总计数

df.groupby('字段').count()

3.按某字段对某列进行汇总计数

df.groupby('字段')['列名'].count()

4.按两个字段对某列进行汇总计数

df.groupby(['字段1','字段2'])['列名'].count()

5.按某字段进行分类计算某列的数量、合计和均值

df.groupby('字段')['列名'].agg(len,np.sum,np.mean)

七、统计分析

创建数据表

1.数据抽样

df.sample(n=None,frac=None,replace=False,weights=None,random_state=None, axis=None)[source]

1.1随机抽取n行

df.sample(n)

1.2按比例抽取

df.sample(frac=n)

1.3按抽样权重抽取

df.sample(n,weights=weights)

1.4无放回抽样

df.sample(n,replace=False)

1.5有放回抽样

2.计算最大值:max(axis=0/1)

3.计算最小值:min(axis=0/1)

4.计算均值:mean(axis=0/1)

5.计算标准差:std()

6.计算方差:var()

7.数据表描述性统计

df.describe()

8.计算协方差

计算两个字段间的协方差系数:df['列1'].cov(df['列2'])

计算数据表中所有字段间的协方差系数:df.cov()

9.计算相关性系数(接近1为正相关,接近-1为负相关,0为不相关)

计算两个字段间的相关性系数:df['列1'].corr(df['列2'])

计算数据表中所有字段间的相关性系数:df.corr()

责任编辑:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值