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))  # 传递形参为空时,默认打印表的前五行

 运行结果如下: 

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

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

运行结果如下:

 

但如果Excel文件中有脏数据,比如第一行是脏数据,从第二行开始,才是我们所需的数据,如下图:
 

应该如何调用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中把index和columns分开对待,所以打印时没有Id这一列

 

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

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)#读取文件的列名

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值