Python实现从多表格中随机抽取数据

 更新时间:2023年05月24日 08:36:30   作者:疯狂学习GIS  
这篇文章主要介绍了如何基于Python语言实现随机从大量的Excel表格文件中选取一部分数据,并将全部文件中随机获取的数据合并为一个新的Excel表格文件的方法,希望对大家有所帮助

本文介绍基于Python语言,针对一个文件夹下大量的Excel表格文件,基于其中每一个文件,随机从其中选取一部分数据,并将全部文件中随机获取的数据合并为一个新的Excel表格文件的方法。

首先,我们来明确一下本文的具体需求。现有一个文件夹,其中有大量的Excel表格文件(在本文中我们就以.csv格式的文件为例);如下图所示。

其中,每一个Excel表格文件都有着如下图所示的数据格式;其中的第1行表示每一列的名称,第1列则表示时间。

我们希望实现的,就是从每一个Excel表格文件中,随机选取10行数据(第1行数据肯定不能被选进去,因为其为列名;第1列数据也不希望被选进去,因为这个是表示时间的数据,我们后期不需要),并将这一文件夹中全部的Excel表格文件中每一个随机选出的10行数据合并到一起,作为一个新的Excel表格文件。

明白了需求,我们即可开始代码的撰写;本文用到的具体代码如下所示。

# -*- coding: utf-8 -*-
"""
Created on Fri May 19 01:47:06 2023

@author: fkxxgis
"""

import os
import pandas as pd

original_path = "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/19_2022Data"
result_path = "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/20_Train_Model"

result_df = pd.DataFrame()

for file in os.listdir(original_path):
    if file.endswith(".csv"):
        
        df = pd.read_csv(os.path.join(original_path, file))
        sample_df = df.sample(n = 10, axis = 0)
        sample_df = sample_df.iloc[ : , 1 : ]
        result_df = pd.concat([result_df, sample_df])
        
result_df.to_csv(os.path.join(result_path, "Train_Model_1.csv"), index = False)

代码中首先定义了原始数据文件夹(也就是有大量Excel表格文件的文件夹)路径和结果数据文件夹路径。然后,创建了一个空的DataFrame,用于存储抽样后的数据。

接下来是一个for循环,遍历了原始数据文件夹中的所有.csv文件,如果文件名以.csv结尾,则读取该文件。然后,使用Pandas中的sample()函数随机抽取了该文件中的10行数据,并使用iloc[]函数删除了10行数据中的第1列(为了防止第1列表示时间的列被选中,因此需要删除)。最后,使用Pandas中的concat()函数将抽样后的数据添加到结果DataFrame中。

最后,使用Pandas中的to_csv()函数将结果DataFrame保存到结果数据文件夹中,文件名为Train_Model_1.csv,并设置index = False表示不保存索引。

运行上述代码,我们即可获得数据合并后的文件,且第1列数据也已经被剔除了。

到此这篇关于Python实现从多表格中随机抽取数据的文章就介绍到这了,更多相关Python随机抽取数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现压缩文件夹与解压缩zip文件的方法

    Python实现压缩文件夹与解压缩zip文件的方法

    这篇文章主要介绍了Python实现压缩文件夹与解压缩zip文件的方法,涉及Python使用zipfile模块进行zip文件压缩与解压缩相关操作技巧,需要的朋友可以参考下
    2018-09-09
  • 使用Python编写一个浏览器集群框架

    使用Python编写一个浏览器集群框架

    这篇文章主要为大家详细介绍了如何使用Python编写一个浏览器集群框架,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的小伙伴可以跟随小编一起学习一下
    2023-10-10
  • Python+selenium破解拼图验证码的脚本

    Python+selenium破解拼图验证码的脚本

    很多网站在登录或者注册时都会遇到拼图验证码,这种拼图验证码实际上是多个小碎片经过重新组合成的一张整体。本文将和大家分享一个基于Python selenium的破解拼图验证码的脚本,需要的可以参考一下
    2022-02-02
  • Python中的各个多线程模块之间的区别解析

    Python中的各个多线程模块之间的区别解析

    Python中涉及多线程的主要模块包括threading、thread和concurrent.futures,现代Python编程推荐使用threading和concurrent.futures,以提供更高层次的抽象和可用性,感兴趣的朋友跟随小编一起看看吧
    2024-09-09
  • Python基础教程之利用期物处理并发

    Python基础教程之利用期物处理并发

    这篇文章主要给大家介绍了关于Python基础教程之利用期物处理并发的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧。
    2018-03-03
  • Python循环实现n的全排列功能

    Python循环实现n的全排列功能

    这篇文章主要介绍了Python循环实现n的全排列功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • Python列表生成器的循环技巧分享

    Python列表生成器的循环技巧分享

    这篇文章主要介绍了Python列表生成器的循环技巧分享,本文讲解了列表生成器中一个循环和二个循环的不同写法,需要的朋友可以参考下
    2015-03-03
  • python3实现跳一跳点击跳跃

    python3实现跳一跳点击跳跃

    这篇文章主要为大家详细介绍了python3实现跳一跳点击跳跃,玩跳一跳小游戏的思路,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • pandas数据分组和聚合操作方法

    pandas数据分组和聚合操作方法

    下面小编就为大家分享一篇pandas数据分组和聚合操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)

    Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)

    今天小编就为大家分享一篇Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06

最新评论