Python實現(xiàn)從多表格中隨機抽取數(shù)據(jù)
本文介紹基于Python語言,針對一個文件夾下大量的Excel表格文件,基于其中每一個文件,隨機從其中選取一部分數(shù)據(jù),并將全部文件中隨機獲取的數(shù)據(jù)合并為一個新的Excel表格文件的方法。
首先,我們來明確一下本文的具體需求?,F(xiàn)有一個文件夾,其中有大量的Excel表格文件(在本文中我們就以.csv格式的文件為例);如下圖所示。

其中,每一個Excel表格文件都有著如下圖所示的數(shù)據(jù)格式;其中的第1行表示每一列的名稱,第1列則表示時間。

我們希望實現(xiàn)的,就是從每一個Excel表格文件中,隨機選取10行數(shù)據(jù)(第1行數(shù)據(jù)肯定不能被選進去,因為其為列名;第1列數(shù)據(jù)也不希望被選進去,因為這個是表示時間的數(shù)據(jù),我們后期不需要),并將這一文件夾中全部的Excel表格文件中每一個隨機選出的10行數(shù)據(jù)合并到一起,作為一個新的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)
代碼中首先定義了原始數(shù)據(jù)文件夾(也就是有大量Excel表格文件的文件夾)路徑和結(jié)果數(shù)據(jù)文件夾路徑。然后,創(chuàng)建了一個空的DataFrame,用于存儲抽樣后的數(shù)據(jù)。
接下來是一個for循環(huán),遍歷了原始數(shù)據(jù)文件夾中的所有.csv文件,如果文件名以.csv結(jié)尾,則讀取該文件。然后,使用Pandas中的sample()函數(shù)隨機抽取了該文件中的10行數(shù)據(jù),并使用iloc[]函數(shù)刪除了10行數(shù)據(jù)中的第1列(為了防止第1列表示時間的列被選中,因此需要刪除)。最后,使用Pandas中的concat()函數(shù)將抽樣后的數(shù)據(jù)添加到結(jié)果DataFrame中。
最后,使用Pandas中的to_csv()函數(shù)將結(jié)果DataFrame保存到結(jié)果數(shù)據(jù)文件夾中,文件名為Train_Model_1.csv,并設(shè)置index = False表示不保存索引。
運行上述代碼,我們即可獲得數(shù)據(jù)合并后的文件,且第1列數(shù)據(jù)也已經(jīng)被剔除了。
到此這篇關(guān)于Python實現(xiàn)從多表格中隨機抽取數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python隨機抽取數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Numpy實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)(CNN)的示例
這篇文章主要介紹了Numpy實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)(CNN)的示例,幫助大家更好的理解和使用Numpy,感興趣的朋友可以了解下2020-10-10
使用Python實現(xiàn)租車計費系統(tǒng)的兩種方法
本文通過兩種方法給大家分享了使用Python實現(xiàn)租車計費系統(tǒng),非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-09-09
Python網(wǎng)絡(luò)編程實戰(zhàn)之爬蟲技術(shù)入門與實踐
這篇文章主要介紹了Python網(wǎng)絡(luò)編程實戰(zhàn)之爬蟲技術(shù)入門與實踐,了解這些基礎(chǔ)概念和原理將幫助您更好地理解網(wǎng)絡(luò)爬蟲的實現(xiàn)過程和技巧,需要的朋友可以參考下2023-04-04

