PHP前端开发

python中pandas和xlsxwriter读写xlsx文件的方法介绍(附代码)

百变鹏仔 1个月前 (01-23) #Python
文章标签 代码

本篇文章给大家带来的内容是关于python中pandas和xlsxwriter读写xlsx文件的方法介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

已有xlsx文件如下:

1. 读取前n行所有数据

# coding: utf-8import  pandas  as pd# 1. 读取前n行所有数据df = pd.read_excel('school.xlsx')#读取xlsx中第一个sheetdata1 = df.head(7)   # 读取前7行的所有数据,dataFrame结构data2 = df.values    #list形式,读取表格所有数据print("获取到所有的值:{0}".format(data1)) #格式化输出print("获取到所有的值:{0}".format(data2)) #格式化输出

2. 读取特定行,特定列

# coding: utf-8import  pandas  as pd# 2. 读取特定行,特定列df = pd.read_excel('school.xlsx')  #读取xlsx中第一个sheetdata1 = df.ix[0].values     #读取第一行所有数据,0表示第一行,不包含表头data2 = df.ix[1,1]   #读取指定行列位置数据data3 = df.ix[[1,2]].values   #读取指定多行data4 = df.ix[:,[0]].values   #读取指定列的所有行#data4 = df[u'class'].values   #同上data5 = df.ix[:,[u'class',u'name']].values   #读取指定键值列的所有行print("数据:{0}".format(data1))print("数据:{0}".format(data2))print("数据:{0}".format(data3))print("数据:{0}".format(data4))print("数据:{0}".format(data5))

3. 获取xlsx文件行号,所有列名称

# coding: utf-8import  pandas  as pd# 3. 获取xlsx文件行号,所有列名称df = pd.read_excel('school.xlsx')  #读取xlsx中第一个sheetprint("输出行号列表{}".format(df.index.values))   # 获取xlsx文件的所有行号print("输出列标题{}".format(df.columns.values))   #所有列名称

4. 读取xlsx数据转换为字典

# coding: utf-8import  pandas  as pd# 4. 读取xlsx数据转换为字典df = pd.read_excel('school.xlsx')  #读取xlsx中第一个sheettest_data=[]for i in df.index.values:#获取行号的索引,并对其进行遍历:    #根据i来获取每一行指定的数据 并利用to_dict转成字典    row_data=df.ix[i,['id','name','class','data','stature']].to_dict()    test_data.append(row_data)print("最终获取到的数据是:{0}".format(test_data))

5. 写xlsx文件

#coding: utf-8import xlsxwriter# 创建工作簿file_name = "first_book.xlsx"workbook = xlsxwriter.Workbook(file_name)# 创建工作表worksheet = workbook.add_worksheet('sheet1')# 写单元格worksheet.write(0, 0, 'id')worksheet.write(0,1, 'name')worksheet.write(0,2, 'class')worksheet.write(0,3, 'data')# 写行worksheet.write_row(1, 0, [1, 2, 3])# 写列,其中列D需要大写worksheet.write_column('D2', ['a', 'b', 'c'])# 关闭工作簿workbook.close()

写入的xlsx文件如下: