• 手机站
  • 收藏
聚培教育网合作机构 > 潍坊达内教育
潍坊达内教育
400-998-6158
潍坊达内教育育是一家由留学海归创办的高端职业教育培训机构,是中国人才培养平台、人才输送平台。
潍坊达内教育

Python pandas十分钟教程

python学习网

更新时间:2021-11-02 浏览:102
核心提示:Pandas是数据分析和数据统计分析中最时兴的Python库。一直备受大伙儿的青睐,文中就给各位介绍一下怎么使用Pandas的不一样涵数开展数据信息探寻和实际操作

Pandas是数据分析和数据统计分析中最时兴的Python库。一直备受大伙儿的青睐,文中就给各位介绍一下怎么使用Pandas的不一样涵数开展数据信息探寻和实际操作。包含怎样导进数据及其访问,挑选 ,清除,数据库索引,合拼和导出数据等常见实际操作的涵数应用,坚信之后一定会在工作上使用这一专业技能。

pandas导进与设定

一般在应用pandas时,大家主导入pandas库。


import pandas as pd

pandas在默认设置状况下,假如数据信息集中化有很多列,则并不是全部列都是会展现在輸出表明中。 您还可以采用下面的编码行来设定輸出表明中的行数:


pd.set_option('display.max_columns', 500)

500表明列的水平总宽。 换句话说,500代表着在启用数据帧时数最多能够表明500列。 初始值仅为50。除此之外,假如需要拓展输表明的个数。能够借助如下所示编码开展设定:


pd.set_option('display.max_rows', 500)

获取数据集

导进数据信息是逐渐的**步,应用pandas能够很便捷的载入excel数据信息或是csv数据信息,应用编码如下所示:


pd.read_csv("Soils.csv")

pd.read_excel("Soils.xlsx")

在括弧内 "Soils.csv"是提交的数据信息文件夹名称,一般假如数据库文件没有各项工作途径,则还需再加上途径信息内容。假如载入的文档沒有字段名,*须 在程序流程中设定header,举例说明如下所示:


pd.read_csv("Soils.csv",header=None)

假如恰巧数据信息聚集有日期時间种类的列,那麼就*须在括弧内设定主要参数parse_dates = [column_name],便于Pandas能够将该列鉴别为日期。 比如,假如数据信息集中化有一个名叫Collection_Date的日期列,则载入编码如下所示:


pd.read_excel("Soils.xls", parse_dates = ['Collection_Date'])

低于是取得成功导进后的数据信息浏览。

探寻DataFrame

低于是查询数据信息的5个最常见的涵数:

df.head():默认设置回到数据的前5行,能够在引号中变更回到的个数。 实例: df.head(10)将回到10行。

df.tail():回到数据的还有5行。一样能够在引号中变更回到的个数。

df.shape: 回到表明层面的元组。 比如輸出(48,14)表明48行14列。

df.info():给出的数据引言,包含数据库索引基本数据类型,列基本数据类型,非空值和运行内存应用状况。

df.describe():给予描述统计数据信息。

统计分析某列数据信息

低于是一些用于查询数据信息某一列信息内容的好多个涵数:

df['Contour'].value_counts() : 回到测算列中每一个值发生频次。

df['Contour'].isnull().sum():回到'Contour'列中的空值记数

df['pH'].notnull().sum():回到“pH”列中非空值的记数

df['Depth'].unique():回到'Depth'列中的**值

df.columns:回到全部列的名字

挑选 数据信息

列挑选 :假如只想要挑选 一列,能够应用df['Group']. 这儿'Group'是字段名。

要选定好几个列,能够应用df[['Group', 'Contour', 'Depth']]。

非空子集挑选 /数据库索引:假如要选用相应的非空子集,我们可以应用.loc或.iloc方式 。 基本上操作方法以下:

df.loc[:,['Contour']]:挑选 'Contour'列的任何数据信息。 在其中单灶具:挑选 全部行。在分号的左边,您能够特定要求的行,并在分号的右边特定列。

df.loc[0:4,['Contour']]:挑选 “Contour”列的0到4行。

df.iloc[:,2]:挑选 第二列的任何数据信息。

df.iloc[3,:]:挑选 第三行的任何数据信息。

数据预处理

数据预处理是数据处理方法一个绕不以前的坎,一般大家搜集到的数据信息全是不整洁的,缺少值,出现异常值这些全是要大家解决的,Pandas中给大家分享了好几个数据预处理的涵数。

标值更换


df.replace({'Topk': 'Top'}, inplace=True)

删掉空值


df['pH'].dropna(inplace=True)

键入空值


df['pH'].fillna(df['pH'].mean(), inplace=True) #nulls are imputed with mean of pH column

删掉列和行


df.drop(columns = ['Na'], inplace = True) #This drops the 'Na' columndf.drop(2, axis=0, inplace=True) #This drops the row at index 2

特别注意的是,axis = 0表明删掉行。 您还可以应用axis = 1来删掉列。

变更列名字


df.rename(columns = {'Conduc' : 'Cond', 'Dens' : 'Density'}, inplace = True)

数据处理方法

您还可以应用.apply在数据信息.apply的行或列中运用涵数。 下边的源代码将平方根运用于“Cond”列中的每个值。


df['Cond'].apply(np.sqrt)

数据信息排序

有时候人们*须将数据信息排序来能够更好地观查数据信息间的差别。Pandas中给予下列多种方法对信息开展排序。下边的实例按“Contour”列对信息开展排序,并测算“Ca”列中纪录的均值,总数或记数。


df.groupby(by=['Contour'])['Ca'].mean()

df.groupby(by=['Contour'])['Ca'].count()

df.groupby(by=['Contour'])['Ca'].sum()

还可以按两列开展数据信息排序。


df.groupby(by=['Contour', 'Gp'])['Ca'].mean()

合拼好几个DataFrame

将2个数据信息合拼在一起有这两种方式 ,即concat和merge。Concat适用层叠好几个数据帧的行。

按列联接数据信息


pd.concat([df, df2], axis=1)

按行联接数据信息


pd.concat([df, df2], axis=0)

当您的数据帧中间有公共性列时,合拼适用组成数据帧。

合拼数据信息


pd.merge(df, df2, left_on='Contour', right_on='Contour', how='outer')

数据信息储存

在进行数据预处理后,就*须将数据信息导出到csv或excel文档中储存。假如要将数据信息导出到由制表符隔开的csv文件,请采用下面的编码。't'表明您期望它以制表符隔开。


df.to_csv('myDataFrame.csv', sep='t')

輸出到excel:


writer = pd.ExcelWriter('myDataFrame.xlsx')

df.to_excel(writer,'DataFrame')

writer.save()
更多>同类资讯
更多>相关课程
顶部