使用Python横向合并excel文件的实例
作者:哎呀小顽石 发布时间:2023-09-19 21:20:18
标签:Python,合并,excel
起因:
有一批数据需要每个月进行分析,数据存储在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")
合并结果:
来源:https://blog.csdn.net/sinat_16029945/article/details/78512075
0
投稿
猜你喜欢
- 关于在asp中不使用组件使得脚本sleep的办法还比较少见,可能比较好的办法是创建同步的xmlhttp request,直到获得的时间达到某
- 几个利用背景结合a:hover做的小东东,希望对大家有所帮助。<!DOCTYPE html PUBLIC "-//W3C//
- 前言HTML 5如同一场革命,正在Web2.0后时代轰轰烈烈的进行着。HTML 5是什么,无须我在这里赘述了。对于HTML 5的革新,按我的
- 在浏览器 IE6 、IE7、Firefox2+、Firefpx3+、Opera9.6+、Safari3.1+中测试以下代码:<!DOC
- Python 风格规范(Google)本项目并非 Google 官方项目, 而是由国内程序员凭热情创建和维护。如果你关注的是 Google
- 我想将一个二维数组横纵列转过来,我就不信只有我有这个需求,可是百度了好久,四海八荒都找遍了……后来证明还是大神说的google好用 ~ 第一
- 再之前同时安装 python 后 只需把环境变量PATH 里面改为PATH=C:\Python36-32\Scripts\;C:\Pytho
- 本文介绍了关于redux-saga中take使用方法详解,分享给大家,具体如下:带来一个自己研究好久的API使用方法.redux-saga中
- 这几天正在为压缩代码的事情所困扰,大家也可以看见,我的博客顶端有两个在线的压缩工具,但在实际应用过程中,除了CSS的压缩比较满意外,JS的压
- 前言:项目的成就感来源于大家~~必须先感谢一切该感谢的人!(旁白:写了很多次设计实录分享,这次是最百感交集的一次,话多这习惯还大家海涵~嘻嘻
- 概述:本文主要分享一下博主在学习wxpy 的过程中开发的一个小程序。博主在最近有一个监控报警的需求需要完成,然后刚好在学习wxpy 这个东西
- 本文实例讲述了Python实现扣除个人税后的工资计算器。分享给大家供大家参考,具体如下:正好处于找工作期间避免不了会跟单位谈论薪资的情况,当
- 五一在家写的,和大家分享,支持所有浏览器,添加了左侧菜单点击变色效果<!DOCTYPE html PUBLIC "-//W3
- 错误类型: Microsoft JET Database Engine (0x80004005) 不能使用 '';文件已在使
- 在我们写样式的时候,页面的CSS在经历几个版本的修改之后,可能有些样式已经用不到了,或许将某些样式更名了而原来的忘了删除,总之页面中可能存在
- 在进行爬虫爬取淘宝商品信息时候,利用selenium来模拟浏览器进行爬取时遇到了这个问题:selenium.common.exception
- 问题描述最近~ 发现对series里的元素操作挺复杂的,用for loop + Series.iloc[i]会发生卡死的状况,那么,lamb
- 本文实例讲述了python实现从字典中删除元素的方法。分享给大家供大家参考。具体分析如下:python的字典可以通过del方法进行元素删除,
- 目录一.权限简介二.权限表结构设计:第一版三.权限表结构设计:第二版四.客户管理之动态“一级”菜单五.客户管理之动态“二级”菜单六.客户管理
- 一、模块概述模块指的是包含python代码的文件,也就是一个.py文件就是一个模块。文件夹(directory)---->包(pack