将60000行数据的excel提取其中10%作为模型测试集,并将提取剩下的数据输出为另一个文件

import openpyxl
import random
from openpyxl import load_workbook#PATH #路径名
INPUT_FILES_BASE_PATH ="D:\\Users\\User\\Desktop\\"
EXCEL_FILENAME = 'name.xlsx'def get_row_value(ws,row):col_num = ws.max_columrow_data = []for i in range(1,col_num+1):cell_value = ws.cell(row=row, column=i).valuerow_data.append(cell_value)return row_datafor i in range(1):#input #输入wb = load_workbook(r"{}".format(INPUT_FILES_BASE_PATH) + "{}".format(EXCEL_FILENAME))sheet = wb.activerow_num = sheet.max_row#Take 10% of the sample at random, leaving the first row of table heads alone.# Variable function to achieve different random extraction rates# 随机抽取10%样本,第一行表头不取。可更改函数实现不同随机抽取率random_num = random.sample(range(2,row_num+1),row_num//10)#Write into new form #写入表格#RandomExtract part #随即提取的部分wb2 = openpyxl.Workbook()sheet2 = wb2.activesheet2.append(get_row_value(sheet,1))for j in random_num:sheet2.append(get_row_value(sheet,j))#sheet2.append(['The random number generated is:'] + random_num)# If a random number needs to be generated, it is printed to the last row of the table#sheet2.append(['生成的随机数为:'] + random_num) 若需要生成的随机数,则会输出到表格最后一行#output #输出out_file_name1 = 'RandomExtract.xlsx'wb2.save(out_file_name1)# Remainder #剩下的部分wb3 = openpyxl.Workbook()sheet3 = wb3.activesheet3.append(get_row_value(sheet, 1))for m in range(2,row_num+1):if m not in random_num:sheet3.append(get_row_value(sheet, m))# output #输出out_file_name2 = 'RandomRemain.xlsx'wb3.save(out_file_name2)print('Success extract')

***************************************************************************

2022-11-07补充:

发现有的朋友会运行时候遇到下面问题:

AttributeError: 'Worksheet' object has no attribute 'max_colum'

这个报错可能有一下几个原因:

1、我的openpyxl版本号是3.0.9,版本不同的话可能函数名不一样,或者有的版本干脆删除了这个函数。所以检查你的版本号或者直接安装我这个版本会解决问题

2、 excel文件读取保存后缀要是.xlsx, 如果是.xls可能会报错

3、未安装Xlsxwriter,可参考:https://www.pythonheidong.com/blog/article/505502/0419a71691120e53ac8f/ (我没遇到过这种情况)

Python 随机提取Excel中部分数据并输出为新表格相关推荐

  1. python读excel成数组_python读取excel数据 python怎么从excel中读取数据?

    python怎么从excel中读取数据?分母那么浩瀚,分子那么微弱.唯一就等于没有. #导入包 import xlrd #设置路径 path='C:\\Users\\jyjh\\Desktop\\da ...

  2. Python 批量提取Excel中的图片,图片文件名按指定列存储

    openpyxl 以及 openpyxl_image_loader,conda或者pip无法安装的话,官网下载whl,然后pip安装本地包 [注意]:图片必须在单元格内,不能压过单元格边界 from ...

  3. 使用python批量提取txt中的数据并写入excel

    本人是编程小白,同时也是一名准毕业研究生,在处理众多数据时总是要花很多时间来做重复的工作以提取出需要的数据,让我十分头疼.我无法忍受这种低效的工作,于是便开始尝试使用Python进行编程来批量处理数据 ...

  4. 【Matlab】提取excel中的数据画折线图

    1. 前言 在日常数据分析时,将数据保存为xlsx的格式进行存储,本文利用xlsread函数对excel数据进行提取,并利用其数据进行二维图像的绘制. 2. excel中数据内容 3. 代码 %1代表 ...

  5. 【python】把Excel中的数据在页面中可视化

    一. 需求      最近我们数据可视化的老师让我们把广州历史房价中的房价数据可视化,然后给我们发了广州历史房价.xls,然后看了一下数据确实有点小多,反正复制粘贴是有点费劲的,所以就想借用pytho ...

  6. python如何读取excel数据-python怎么从excel中读取数据?

    #导入包 import xlrd #设置路径 path='C:\Users\jyjh\Desktop\datap.xlsx' #打开文件 data=xlrd.open_workbook(path) # ...

  7. python怎么读取excel数据-python怎么从excel中读取数据?

    #导入包 import xlrd #设置路径 path='C:\Users\jyjh\Desktop\datap.xlsx' #打开文件 data=xlrd.open_workbook(path) # ...

  8. 【python】从Excel中提取数据并判断该数据是否含有特定的关键词

    第一次在CSDN发布文章,初衷是为了记录的同时希望能帮到有需要的人与大家共同学习,不足之处还请大佬们多多指教,感谢~ 参考链接有:[python]提取excel中的某一列数据_allan2222的博客 ...

  9. python怎么从excel获取数据_python怎么从excel中读取数据?/python 读取 excle

    如何通过python快速输出数据库数据到excel 扩展库 xlrd 读excle xlwt 写excle 直接度就能下载 下载后使用 import xlrd 就可excle文件了 打开文件: xls ...

最新文章

  1. BP神经网络分类2*2对角矩阵准确率数据汇总
  2. 谷歌chrome浏览器的源码分析(二)
  3. 转观念 变架构 补短板——析科华恒盛向数据中心方案商转型
  4. android 中空饼图控件,android饼状图内是空心的怎么做
  5. css居中悬浮,CSS悬浮居中
  6. LC-779 语法中的第k个字符
  7. [转载] 民兵葛二蛋——第9集
  8. 【转载】GIT教程 猴子都能懂得git入门
  9. Docker 从入门到实战视频教程(15 个视频)
  10. 数商云:浅析数字化供应链的现状跟未来
  11. MySQL笔记6:.frm和.myi和.myd文件详解
  12. 00018计算机应用基础2021,2021年全国自考10月00018计算机应用基础历年试题含答案.doc...
  13. 用Python实现表格读写
  14. c++将浮点数转换为整数类型,要求四舍五入
  15. bootstrap table表头错位,火狐浏览器下滚动条挤像素问题解决方案。
  16. 文章发表前的最后一步:仔细审查校对样本
  17. Shell基础之自定义变量
  18. 民用飞机着陆阶段着陆方法_着陆区第二部分的解剖
  19. Android 关于系统应用添加一键拨号
  20. 抽象工厂模式--实例分析

热门文章

  1. 人口普查分析:利用python+百度文字识别提取图片中的表格数据
  2. 基于神经网络的语音频带扩展
  3. 农业遥感技术科研成果汇总
  4. 基于Netty的UDP服务端开发
  5. 印象笔记Mac版的快捷键有哪些?
  6. 【装机吧】电脑上网慢的解决方法
  7. 淘宝接入微信,并将支持微信支付
  8. RBP系统管理之日志管理
  9. 【07】函数调用:为什么会发生stack overflow?
  10. 三菱服务器显示d1d2,三菱PLC指令SMOV D2 K2 K2 D1 K3详解