使用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")

合并结果:

以上这篇使用Python横向合并excel文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python之DataFrame实现excel合并单元格

    在工作中经常遇到需要将数据输出到excel,且需要对其中一些单元格进行合并,比如如下表表格,需要根据A列的值,合并B.C列的对应单元格 pandas中的to_excel方法只能对索引进行合并,而xlsxwriter中,虽然提供有merge_range方法,但是这只是一个和基础的方法,每次都需要编写繁琐的测试才能最终调好,而且不能很好的重用.所以想自己写一个方法,结合dataframe和merge_range.大概思路是: 1.定义一个MY_DataFrame类,继承DataFrame类,这样能很

  • Python合并多个Excel数据的方法

    安装模块 1.找到对应的模块   http://www.python-excel.org/ 2.用pip install 安装 pip install xlrd pip install XlsxWriter pip list查看 XlsxWriter示例 import xlsxwriter # 创建一个工作簿并添加一个工作表 workbook = xlsxwriter.Workbook("demo.xlsx") worksheet = workbook.add_worksheet()

  • python合并同类型excel表格的方法

    本文实例为大家分享了python合并同类型excel表格的具体代码,供大家参考,具体内容如下 python脚本如下,验证有效. #!/usr/bin/env python # -*- coding: UTF-8 -*- import os, csv class CSVTopoIreator: def __init__(self, filename): self.infile = open(filename, 'rb') self.reader = csv.reader(self.infile)

  • Python批量合并有合并单元格的Excel文件详解

    合并单元格 合并单元格相信大家都会,比如下面这段简单的代码就可以实现: app='Word' word=win32.gencache.EnsureDispatch('%s.Application' % app) doc=word.Documents.Add() word.Visible=False #Title begin sel =word.Selection sel.Font.Name = u"微软雅黑" sel.Font.Size = 8 sel.Font.Bold = Fals

  • Python将多个excel文件合并为一个文件

    利用Python,将多个excel文件合并为一个文件 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中. 完整代码 # -*- coding: utf-8 -*- #将多个Excel文件合并成一个 import xlrd import xlsxwriter #打开一个excel文件 def open_xls(file): fh=xlrd.open_workbook(file) return fh #

  • Python实现合并excel表格的方法分析

    本文实例讲述了Python实现合并excel表格的方法.分享给大家供大家参考,具体如下: 需求 将一个文件夹中的excel表格合并成我们想要的形式,主要要pandas中的concat()函数 思路 用os库将所需要处理的表格放到同一个列表中,然后遍历列表,依次把所有文件纵向连接起来. 最开始的第一种思路是先拿一个文件出来,然后让这个文件依次去和列表中的剩余文件合并: 第二种是用文件夹中第一个文件和剩余的文件合并,使用range(1,len(file)),可以省去单独取第一个文件的步骤. 遇到的问

  • python 实现读取一个excel多个sheet表并合并的方法

    如下所示: import xlrd import pandas as pd from pandas import DataFrame DATA_DIR = 'E:/' excel_name = '%s2017.xls' % DATA_DIR wb = xlrd.open_workbook(excel_name) # print(wb) # 获取workbook中所有的表格 sheets = wb.sheet_names() # print(sheets) # 循环遍历所有sheet df_28

  • Python将多个excel表格合并为一个表格

    生活中经常会碰到多个excel表格汇总成一个表格的情况,比如你发放了一份表格让班级所有同学填写,而你负责将大家的结果合并成一个.诸如此类的问题有很多.除了人工将所有表格的内容一个一个复制到汇总表格里,那么如何用Python自动实现这些工作呢~ 我不知道有没有其他更方便的合并方法,先用Python实现这个功能,自己用就很方便了. 比如,在文件夹下有如下7个表格(想象一下有100个或更多的表格需要合并) 作为样例,每个表格的内容均为 运行程序,将7个表格合并成了test.xls 打开test.xls

  • 使用python将多个excel文件合并到同一个文件的方法

    应用场景:使用pandas把多个相同结构的Excel文件合并为一个. 原始数据: 相关代码: import os import pandas as pd # 将文件读取出来放一个列表里面 pwd = 'test' # 获取文件目录 # 新建列表,存放文件名 file_list = [] # 新建列表存放每个文件数据(依次读取多个相同结构的Excel文件并创建DataFrame) dfs = [] for root,dirs,files in os.walk(pwd): # 第一个为起始路径,第二

  • 使用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\ex

  • 使用Python操作excel文件的实例代码

    使用的类库 pip install openpyxl 操作实现 •工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 wb = Workbook() # 打开一个工作簿 wb = load_workbook('test.xlsx') # 保存工作簿到文件 wb.save('save.xlsx') •工作表操作 # 获得当前的工作表对象 ws = wb.active # 通过工作表名称得到工作表对象 ws = wb.

  • python使用xlrd和xlwt读写Excel文件的实例代码

    安装模块 如果使用的是Linux系统,并且安装了pip,可以直接使用pip安装xlrd, xlwt: pip install xlwt pip install xlrd 也可以从官网下载源代码安装: https://pypi.org/project/xlwt/1.1.2/ https://pypi.org/project/xlrd/ 下载tar.gz文件,解压,并转到解压后的目录中,找到setup.py,输入命令: sudo python setup.py install 安装完成. 导入模块:

  • 教你用Python代码实现合并excel文件

    一.安装模块 1.找到对应的模块 http://www.python-excel.org/ 2.用 pip install 安装 pip3 install xlrd pip3 install XlsxWriter 因为使用的是 python3,所以安装的时候采用 pip3. 二.XlsxWriter 示例 先看看简单的演示: import xlsxwriter # 创建一个工作簿并添加一个工作表 workbook = xlsxwriter.Workbook("c.xlsx") work

  • Python实现对excel文件列表值进行统计的方法

    本文实例讲述了Python实现对excel文件列表值进行统计的方法.分享给大家供大家参考.具体如下: #!/usr/bin/env python #coding=gbk #此PY用来统计一个execl文件中的特定一列的值的分类 import win32com.client filename=raw_input("请输入要统计文件的详细地址:") flag=0 #用于判断文件 名如果不带'日'就为 0 if '\xc8\xd5' in filename:flag=1 print 50*'

  • Python实现的Excel文件读写类

    本文实例讲述了Python实现的Excel文件读写类.分享给大家供大家参考.具体如下: #coding=utf-8 ####################################################### #filename:ExcelRW.py #author:defias #date:2015-4-27 #function:read or write excel file #################################################

  • python:pandas合并csv文件的方法(图书数据集成)

    数据集成:将不同表的数据通过主键进行连接起来,方便对数据进行整体的分析. 两张表:ReaderInformation.csv,ReaderRentRecode.csv ReaderInformation.csv: ReaderRentRecode.csv: pandas读取csv文件,并进行csv文件合并处理: # -*- coding:utf-8 -*- import csv as csv import numpy as np # ------------- # csv读取表格数据 # ---

  • Python实现合并同一个文件夹下所有txt文件的方法示例

    本文实例讲述了Python实现合并同一个文件夹下所有txt文件的方法.分享给大家供大家参考,具体如下: 一.需求分析 合并一个文件夹下所有txt文件 二.合并效果 三.python实现代码 # -*- coding:utf-8*- import sys reload(sys) sys.setdefaultencoding('utf-8') import os import os.path import time time1=time.time() ########################

  • Python读写/追加excel文件Demo分享

    三个工具包 python操作excel的三个工具包如下,注意,只能操作.xls,不能操作.xlsx. • xlrd: 对excel进行读相关操作 • xlwt: 对excel进行写相关操作 • xlutils: 对excel读写操作的整合 这三个工具包都可以直接使用pip进行下载: sudo pip install xlrd sudo pip install xlwt sudo pip install xlutils1 xlwt的缺陷 xlwt只能创建一个全新的excel文件,然后对这个文件进行

随机推荐