python panda读取excel_Python通过pandas读写Excel文件,同时支持xls和xlsx

这篇博客详细介绍了如何使用Pandas库读取Excel文件,包括设置header参数、访问数据、获取行数和列数。还讨论了loc、iloc和ix的区别,并展示了插入和移动列的方法。对于数据处理和分析初学者,这是一个很好的学习资源。
摘要由CSDN通过智能技术生成

input_file =r'C:\Users\测试机\Desktop\测试\测试文件.xlsx'

data_frame = pd.read_excel(input_file,

sheetname='Sheet1')#读取测试文件的Sheet1 另有可选参数,header=None参数是代表没标题行,因为默认载入时,excel表的第一行是标题行。(及pandas表结构中的列的索引名称)

print(data_frame.head(2))#看前2行数据,可以直接用head(),默认是5行

print(data_frame['序号'][1])#访问标题为“序号”的列的第2行数据,字典计数都是从0开始,所以1代表2。

print(data_frame[0][0])#当载入时启用了hearder=None参数时此方法可用,第一个代表列数,第二个代表行数

print(len(data_frame)) #输出行数,方法1

print(data_frame.iloc[:,0].size)#输出行数,方法2

print(data_frame.columns.size)#输出列数,方法1

print(len(data_frame.columns))#输出列集合的长度,即输出列数,方法2

print(data_frame.ix[[2]].values[0][3])#第三行第4列的值,不推荐使用方式,因为ix方式已经不被推荐。

print(data_frame.iloc[[2]].values[0][3])#第三行第4列的值 字典取数,第一个集合中的第四个值

"""

loc、iloc、ix三者差异:

loc——通过行标签索引行数据

iloc——通过行号索引行数据

ix——通过行标签或者行号索引行数据(基于loc和iloc 的混合),但是ix现在已经不建议使用 """

print(data_frame.columns)#输出表的标题栏

#新插入列开始

col_name = data_frame.columns.tolist()#先读取原有的标题栏,转为一个列表。

col_name.insert(col_name.index('序号')+1,'电话号') # 在“序号”

列后面插入一个新的列,列名称为“电话号”

#不指定位置直接插入多列

data_frame=pd.concat([data_frame,

pd.DataFrame(columns=list(['测试列1','测试列2']))])#插入测试列1,测试列2,位置不确定,依列名自行排序。

data_frame=data_frame.reindex(columns=col_name,fill_value=0)#重新更新索引值(即列标题行),不加参数(fill_value=0)就是NaN,此时,完成新列插入

#移动列方法开始

col_name = data_frame.columns.tolist()#先读取原有的标题栏,转为一个列表。

#某列插入到另外一列前面,纯数字的标准写法

item=col_name.pop(1)#将第二列弹出

col_name.insert(0, item)#再将第二列插入到第一列前面

data_frame=data_frame.reindex(columns=col_name)#最后更新下表的索引。完成。

#某列插入到另外一列前面,用列名的标准写法,此方法最好列名没有重复。

item=col_name.pop(col_name.index('电话号'))#当标题栏没有重复名称时候,可以如下使用。

col_name.insert(col_name.index('时间'),

item)#将“电话”列插入到“时间”列前面

data_frame=data_frame.reindex(columns=col_name)#最后更新下表的索引。完成

print(data_frame)#输出整个表对象

print('%s%s' %

('第三行索引值为:',data_frame.iloc[[2]].index.values[0]))#第3行的索引值,用格式化方式合并,可以不管数据类型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值