pandas数据分析轻松学(二)——读取Excel文件

该系列博客,均来自刘铁猛老师的视频内容,网址如下:

http://www.timliu.net

 

一、IDE环境:anaconda+PyCharm,python3.6

二、新建.py文件(注意文件命名)

三、具体读取数据操作如下:

  • Excel文件头部和尾部行数据的读取
import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/People.xlsx')  # 读取文件数据,返回一个指向数据对象的引用
print(people.shape)  # 打印出people对象的属性(有几行几列)
print(people.head(3))  # 传递形参为空时,默认打印表的前五行
print('===============================')
print(people.tail(3))  # 传递形参为空时,默认打印表的前五行

 运行结果如下: 

pandas数据分析轻松学(二)——读取Excel文件_第1张图片

  • Excel文件列名称的读取
import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/People.xlsx')  # 读取文件数据,返回一个指向数据对象的引用
print(people.columns)#读取文件的列名

运行结果如下:

 

但如果Excel文件中有脏数据,比如第一行是脏数据,从第二行开始,才是我们所需的数据,如下图:
 pandas数据分析轻松学(二)——读取Excel文件_第2张图片

应该如何调用pandas库实现所需数据的访问???(如下图所示的解决方法,设置读取文件的属性即可)

import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/People2.xlsx',header=1)#header默认为0,此处设置为1   
print(people.columns)#读取文件的列名

运行结果如下 

 

注意:1、如果Excel文件第一行为空,那么不指定header=1也能正确答应header的属性值

           2、只要第一行数据错误(脏数据),那么就必须指定数据读取的第一行属性值,也就是“header”属性了

           3、若没有列名,那么就设置“header=None”,系统就会自动生成一个从0开始的整数列表作为列名,如下图所示:

import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/People2.xlsx',header=None)  # 读取文件数据,返回一个指向数据对象的引用
print(people.columns)#读取文件的列名

 

我们可以人为的设置表的列名,并保存所需文件,如下所示:

import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/People2.xlsx',header=None)  # 读取文件数据,返回一个指向数据对象的引用
people.columns=['Id','Type','Title','FirstName','MiddleName','LastName']#设置表的列名
people=people.set_index('Id')#设置Id为索引,生成新的对象后,返回一个指向people的对象
print(people.columns)#读取文件的列名
people.to_excel('C:/Users/Dongxiao Yuan/Desktop/Output.xlsx')#保存新的文件
print('Done!!')



#people=people.set_index('Id')代码可用下面的代码来替换
#people.set_index('Id',inplace=True)

运行结果如下(Id已经消失,因为它已经变成index了): 

 

people.set_index('Id',inplace=True)代码第二个参数指在源文件基础上改动并保存

pandas数据分析轻松学(二)——读取Excel文件_第3张图片

注意:pandas中把index和columns分开对待,所以打印时没有Id这一列

 

  •  再次打开文件时,如果知道哪一列是索引,必须指明,不然pandas又会给自动生成从0开始的整数索引,如下图:

pandas数据分析轻松学(二)——读取Excel文件_第4张图片pandas数据分析轻松学(二)——读取Excel文件_第5张图片

import pandas as pd

people = pd.read_excel('C:/Users/Dongxiao Yuan/Desktop/Output.xlsx',index_col='Id')  # 读取文件数据,返回一个指向数据对象的引用
print(people.columns)#读取文件的列名
people.to_excel('C:/Users/Dongxiao Yuan/Desktop/Output4.xlsx')#保存新的文件
print('Done!!')

 

四、小结

1、每次运行程序,必须保证文件的关闭,不然会出现意料之外的结果或者错误

2、本小结主要讲了Excel文件属性的设置,包括:

      打开属性:header=1/None,index_col=‘Id’

      文件属性设置:people.columns=['Id','Type','Title','FirstName','MiddleName','LastName']#设置表的列名

                               people=people.set_index('Id')#设置Id为索引,生成新的对象后,返回一个指向people的对象

                               people.set_index('Id',inplace=True)

      文件属性:people.shape,people.head(3),people.tail(3)

                       print(people.columns)#读取文件的列名

 

你可能感兴趣的:(pandas)