使用Python横向合并excel文件的实例

yipeiwu_com6年前Python基础

起因:

有一批数据需要每个月进行分析,数据存储在excel中,行标题一致,需要横向合并进行分析。

数据示意:

Python横向合并excel文件

具有多个

Python横向合并excel文件

代码:

# -*- coding: utf-8 -*-
"""
Created on Sun Nov 12 11:19:03 2017
@author: Li Ying
"""
#读取第一列作为合并后表格的第一列
from pandas import read_csv
df = read_csv(r'E:\excel\vb\excel1.csv',header=None)
sample_name = df[0]
 
file="combine"
filedestination = "E://excel//"
import glob 
#from numpy import * 
filearray=[] 
for filename in glob.glob(r'E:\excel\*.xlsx'): 
 filearray.append(filename) 
#以上是从excel 文件夹下读取所有excel表格,并将所有的名字存储到列表filearray 
print("在默认文件夹下有%d个文档哦"%len(filearray)) 
ge=len(filearray) 
matrix = [None]*ge 
 
 
#实现读写数据 
 
#下面是将所有文件读数据到三维列表cell[][][]中(不包含表头) 
import xlrd
for i in range(ge): 
 fname=filearray[i] 
 bk=xlrd.open_workbook(fname) 
 try: 
  sh=bk.sheet_by_name("Sheet1") 
 except: 
  print ("在文件%s中没有找到sheet1,读取文件数据失败,要不你换换表格的名字?" %fname) 
 
 ncols=sh.ncols
 matrix[i] = [0]*(ncols-1)
 
 nrows=sh.nrows
 for m in range(ncols-1):
  matrix[i][m] = ["0"]*nrows
 
 for k in range(1,ncols):
  for j in range(0,nrows):
   matrix[i][k-1][j]=sh.cell(j,k).value
 
import xlwt 
filename=xlwt.Workbook() 
sheet=filename.add_sheet("hel") 
#下面是把第一列写上 
for i in range(0,len(sample_name)): 
 sheet.write(i,0,sample_name[i]) 
#求和前面的文件一共写了多少列 
zh=1 
for i in range(ge): 
 for j in range(len(matrix[i])): 
  for k in range(len(matrix[i][j])): 
   sheet.write(k,zh,matrix[i][j][k]) 
  zh=zh+1 
print("我已经将%d个文件合并成1个文件,并命名为%s.xlsx."%(ge,file)) 
filename.save(filedestination+file+".xls")   
 

合并结果:

Python横向合并excel文件

以上这篇使用Python横向合并excel文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

使用python实现ANN

使用python实现ANN

本文实例为大家分享了python实现ANN的具体代码,供大家参考,具体内容如下 1.简要介绍神经网络 神经网络是具有适应性的简单单元组成的广泛并行互联的网络。它的组织能够模拟生物神经系统...

使用python opencv对目录下图片进行去重的方法

版本: 平台:ubuntu 14 / I5 / 4G内存 python版本:python2.7 opencv版本:2.13.4 依赖: 如果系统没有python,则需要进行安装 sudo...

对Python 获取类的成员变量及临时变量的方法详解

利用Python反射机制,从代码块中静态获取参数: co_argcount: 普通参数的总数,不包括参数和*参数。 co_names: 所有的参数名(包括参数和*参数)和局部变量名的元...

Python的Flask框架及Nginx实现静态文件访问限制功能

Nginx配置 Ngnix,一个高性能的web服务器,毫无疑问它是当下的宠儿。卓越的性能,灵活可扩展,在服务器领域里攻城拔寨,征战天下。 静态文件对于大多数website是不可或缺的一部...

解决python中无法自动补全代码的问题

自已理解自我总结出来的方法,供自己以后使用 #coding:utf-8 from cv2 import * #这里表示让cv2的智能提示功能可用,但是这句话却没有导入cv2模块,不...