python怎么用pandas按照行数分割表格 |
您所在的位置:网站首页 › pandas拆分为多个excel › python怎么用pandas按照行数分割表格 |
python怎么用pandas按照行数分割表格
发布时间:2021-08-13 13:33:15
来源:亿速云
阅读:962
作者:chen
栏目:开发技术
本篇内容主要讲解“python怎么用pandas按照行数分割表格”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么用pandas按照行数分割表格”吧! 目录问题 思路 代码实现 测试效果 问题一张excel表格,大概1万行,需要录入系统 系统每次最多只能录入500行表格数据,一旦超过500行,就会录入失败 需要把1万行的数据按照500行分割,形成20个表格,这样才能录入系统 思路使用pandas得到总行数,比如10002行,分割表格的时候,要保留一行表头 第一张表,是1-500行,第二张表是 501-1000,以此类推 最后一张表应该是1000-10002行,生成的表格数量是10000/500+1,21张 生成的表格按照顺序保存到一个目录中 写一个函数,可以按照任意指定的分割数量进行分割。 代码实现#按行数分割表格函数 #问题 #1.如果有有一个十万行表格,要录入系统,但是系统每次最多只能录入500行? #解决问题: #1.按照指定的行数分割表格 #2.分割出来的表格按照序号命名 import pandas as pd import os def SplitExcel(file,num): file_dir='result' #创建目录 if os.path.isdir(file_dir): os.rmdir(file_dir) else: os.mkdir(file_dir) n = 1 row_list = [] df = pd.DataFrame(pd.read_excel(file, sheet_name=0)) row_num = int(df.shape[0]) # 获取行数 if num >= row_num: #如果分割行数大于总行数,报错 raise Exception('too much!!') try: for i in list(range(num,row_num,num)): row_list.append(i) row_list.append(row_num) # 得到完整列表 except Exception as e: print (e) (name,ext)=os.path.splitext(file) #获取文件名 for m in row_list: filename=os.path.join(file_dir,name+'-' + str(n) + '.xlsx') if m |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |