用Flask+Pandas将16个Excel文件中31万多条数据拆分成318个文件

1.话不多说,先上图看效果

用Flask+Pandas将16个Excel文件中31万多条数据拆分成318个文件_第1张图片

用Flask+Pandas将16个Excel文件中31万多条数据拆分成318个文件_第2张图片

2.技术说明及实用源码

        2.1)python+flask+pandas , 由于我的开发环境版本问题,为了能读xls,xlsx,但又不想升级,只能通过xlrd 1.2.0读取xls,xlsx文件再转换成dict字典格式,再通过 data = pd.DataFrame(dict_data)实现类型转换

        2.2)实用代码,保证不丢任何一行数据,亲测验证,绝对好用

            data = pd.DataFrame(dict_data)

            row_num, column_num = data.shape  # 数据共有多少行,多少列
            print('the sample number is %s and the column number is %s' % (row_num, column_num))
            # 1000行分割
            for i in range(0, (row_num // 1001)+1):
                save_data = data.iloc[i * 1000:(i + 1) * 1000, :]  # 每隔1000循环一次
                split_num = split_num+1
                splitfilename = os.path.join(config.SPLIT_FOLDERFILES, 'split_' + str(split_num) + '.xls')
                print("split file name:",splitfilename)
                save_data.to_excel(splitfilename, sheet_name='Sheet1',  index=False) 
                filenames = filenames + 'split_' + str(split_num) + '.xls '
            filenames = filenames + ';'

        2.3)其实重点就三行代码

        # 1000行分割
            for i in range(0, (row_num // 1001)+1):
                save_data = data.iloc[i * 1000:(i + 1) * 1000, :]  # 每隔1000循环一次

                save_data.to_excel(splitfilename, sheet_name='Sheet1',  index=False)

如果对你有帮助,给个赞吧

你可能感兴趣的:(excel)