用pandas模块轻松做数据分析

本文主要介绍pandas模块,该模块是Python用于数据导入及数据整理的模块,对于数据分析,数据挖掘等前期数据处理工作十分有用,它提供了很多方法,使得数据处理变得简单高效。

pandas模块有两个主要的数据结构对象:Series和DataFrame。Series对象是序列,类似一维数组,同时带有标签和索引,像Python的字典结构;DataFrame对象则相当于一张二维表格,类似二维数组,像数据库中的表。本文对Excel数据的分析主要使用了DataFrame对象。

首先导入pandas库,一般都会用到numpy库,所示我们先导入备用:

import pandas as pd
import numpy as np

下面介绍如何读取Excel文件、读取指定的行列、数据清理、数据合并、数据统计、主要使用了DataFrame对象,分别为df、df1和df2 。

方法一:默认读取第一个表单(Sheet)

execlFile = r”D:\自己的文件\1(1)(1).xlsx”
df = pd.DataFrame(pd.read_excel(execlFile))

方法二:通过指定表单(Sheet)的方式来读取

execlFile = r”D:\自己的文件\1(1)(1).xlsx”
df = pd.DataFrame(pd.read_excel(execlFile,sheet_name=”Sheet”))

df[col]:根据列名,并以Series的形式返回列表

例如:df1 = df[“标题”]

df[col1,col2]:以表格数据形式返回多列

例如:df1 = df[“标题1″,”标题2”]

df.iloc[0,:]:返回第一行(以列形式返回Excel表格第一行数据)

df.iloc[0,0]:返回第一行第一列单元格数据

读取指定的多行,例如10行

df1 = df.ix[[1,10]].values

如果默认读取前5行,可以使用下面代码:

df.head()

数据清理主要实现对Excel数据的清理,包括重命名列名、判断空值、删除包含空值得行和列。

df.columns = [“a”,”b”,”c”]:重命名列名

例如,将”买家会员名””买家实际支付金额”重命名为”会员名””消费金额”,代码如下:

df1 = df[“买家会员名”,”买家实际支付金额”]
df1.columns = [“会员名”,”消费金额”]

pd.isnull() 检查DataFrame对象中的空值,并返回一个Boolean数组

例如,检查”联系手机”一列是否有空值,代码如下:

df1 = df[[“联系手机”]]
a = pd.isnull(df1)

df.dropna():删除所有包含空值的行

例如:print(df1.dropna(axis = 0))

df.dropna(axis = 1) :删除所有包含空值的列

例如:print(df1.dropna(axis = 1))

df.fillna(x) : 用x代替DataFrame对象中的所有空值

例如:将联系手机为空的手机号替换为18688888888

df[“联系手机”] = df[“联系手机”].fillna(18688888888)

下面主要介绍合并多个Excel文件的方法:

df1.append(df2):将df2中的行添加到df1的尾部

pd.concat([df1,df2],axis = 1):将df2中的列添加到df1的尾部

df1.join(df2,on=None,how=”inner”):对df1的列和df2的列执行SQL形式的join(拼接列)

如果两个列的列名相同,可以通过lsuffix=””,rsuffix=””区分,例如:

print(df1.join(df2,on=None,how=”inner”,lsuffix=”1″,rsuffix=”2″))

数据分组统计是对Excel数据进行分组汇总统计。

例如:按”宝贝标题”分组统计宝贝数量,代码如下:

df1 = df.groupby([“宝贝标题”])[“宝贝总数量”].sum()

例如:按”宝贝标题”分组统计每种商品有多少客户购买,代码如下:

df1 = df.groupby([“宝贝标题”])[“客户名称”].count()

DataFrame对象提供了以下方法实现汇总统计:

df.mean():返回所有列的均值

df.count():返回每一列中的非空值个数

df.max():返回每一列的最大值,返回某列最大值需要指定列名,例如df.[“宝贝总数量”].max()

df.min():返回每一列的最小值,返回某列最小值需要指定列名,例如df.[“宝贝总数量”].min()

Original: https://blog.csdn.net/weixin_45191386/article/details/122844763
Author: ζ小菜鸡
Title: 用pandas模块轻松做数据分析

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/600339/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球