最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python找出多個(gè)Excel文件中缺失數(shù)據(jù)行數(shù)多的文件

 更新時(shí)間:2025年01月09日 08:24:51   作者:瘋狂學(xué)習(xí)GIS  
這篇文章主要為大家詳細(xì)介紹了如何使用Python找出多個(gè)Excel文件中缺失數(shù)據(jù)行數(shù)多的文件,文中的示例代碼講解詳細(xì),需要的小伙伴可以參考一下

本文介紹基于Python語言,針對一個(gè)文件夾下大量的Excel表格文件,基于其中每一個(gè)文件內(nèi)、某一列數(shù)據(jù)的特征,對其加以篩選,并將符合要求不符合要求的文件分別復(fù)制到另外兩個(gè)新的文件夾中的方法。

首先,我們來明確一下本文的具體需求?,F(xiàn)有一個(gè)文件夾,其中有大量的Excel表格文件(在本文中我們就以csv格式的文件為例);如下圖所示。

其中,每一個(gè)Excel表格文件都有著如下圖所示的數(shù)據(jù)格式。

如上圖所示,各個(gè)文件都有著這樣的問題——有些行的數(shù)據(jù)是無誤的,而有些行,除了第一列,其他列都是0值。因此,我們希望就以第2列為標(biāo)準(zhǔn),找出含有0值數(shù)量低于或高于某一閾值的表格文件——其中,0值數(shù)量多,肯定不利于我們的分析,我們將其放入一個(gè)新的文件夾;而0值數(shù)量少的,我們才可以對這一表格文件加以后續(xù)的分析,我們就將其放入另一個(gè)新的文件夾中。因此,計(jì)算出每一個(gè)表格文件對應(yīng)的的0值數(shù)量百分比后,我們就進(jìn)一步將這一Excel表格文件復(fù)制到對應(yīng)的文件夾內(nèi)。

知道了需求,我們就可以開始代碼的撰寫。其中,本文用到的代碼如下所示。

# -*- coding: utf-8 -*-
"""
Created on Tue May 16 20:19:50 2023

@author: fkxxgis
"""

import os
import shutil
import pandas as pd

def filter_copy_files(original_path, useful_path, useless_path, threshold):
    original_all_file = os.listdir(original_path)
    for file in original_all_file:
        path = os.path.join(original_path, file)
        if file.endswith(".csv") and os.path.isfile(path):
            df = pd.read_csv(path)
            column_value = df.iloc[:, 1]
            zero_count = (column_value == 0).sum()
            zero_ratio = zero_count / len(column_value)
            
            if zero_ratio < threshold:
                new_path = os.path.join(useful_path, file)
                shutil.copy(path, new_path)
            else:
                new_path = os.path.join(useless_path, file)
                shutil.copy(path, new_path)

filter_copy_files("E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/13_AllYearAverage",
                  "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/14_PointSelection/LowMissingRate",
                  "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/14_PointSelection/HighMissingRate",
                  0.30)

其中,上述代碼是一個(gè)篩選并復(fù)制文件的函數(shù)。該函數(shù)的目的是根據(jù)給定的閾值將具有不同缺失率的文件從一個(gè)文件夾復(fù)制到另外兩個(gè)文件夾。

在代碼中,filter_copy_files函數(shù)接受四個(gè)參數(shù):

  • original_path:原始文件夾的路徑,其中包含要篩選的.csv文件。
  • useful_path:有用文件的目標(biāo)文件夾路徑,將滿足閾值要求(也就是0值數(shù)量低于閾值)的文件復(fù)制到此處。
  • useless_path:無用文件的目標(biāo)文件夾路徑,將不滿足閾值要求(也就是0值數(shù)量高于閾值)的文件復(fù)制到此處。
  • threshold:閾值,用于確定文件的缺失率是否滿足要求。

函數(shù)首先使用os.listdir獲取原始文件夾中的所有文件名,然后遍歷每個(gè)文件名。對于以.csv結(jié)尾且為文件的文件,函數(shù)使用pd.read_csv讀取.csv文件,并通過df.iloc[:, 1]獲取第2列的值。

接下來,函數(shù)計(jì)算第2列中為零的元素?cái)?shù)量,并通過將其除以列的總長度來計(jì)算缺失率。根據(jù)閾值判斷缺失率是否滿足要求。

如果缺失率小于閾值,函數(shù)將文件復(fù)制到useful_path目標(biāo)文件夾中,使用shutil.copy函數(shù)實(shí)現(xiàn)復(fù)制操作。否則,函數(shù)將文件復(fù)制到useless_path文件夾中。

最后,我們調(diào)用了filter_copy_files函數(shù),并傳遞了相應(yīng)的參數(shù)來執(zhí)行文件篩選和復(fù)制操作。

運(yùn)行上述代碼,我們即可在對應(yīng)的文件夾中看到文件。如下圖所示,0值數(shù)量低于閾值的表格文件都復(fù)制到了這個(gè)LowMissingRate文件夾中,我們即可對其加以后續(xù)處理;而那些0值數(shù)量高于閾值的表格文件,就放到另一個(gè)HighMissingRate文件夾中了。

到此這篇關(guān)于使用Python找出多個(gè)Excel文件中缺失數(shù)據(jù)行數(shù)多的文件的文章就介紹到這了,更多相關(guān)Python找出缺失數(shù)據(jù)行數(shù)多的Excel文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python讀寫ini配置文件方法實(shí)例分析

    python讀寫ini配置文件方法實(shí)例分析

    這篇文章主要介紹了python讀寫ini配置文件方法,實(shí)例分析了Python針對ini配置文件的相關(guān)讀寫技巧,需要的朋友可以參考下
    2015-06-06
  • PyTorch基礎(chǔ)之torch.nn.Conv2d中自定義權(quán)重問題

    PyTorch基礎(chǔ)之torch.nn.Conv2d中自定義權(quán)重問題

    這篇文章主要介紹了PyTorch基礎(chǔ)之torch.nn.Conv2d中自定義權(quán)重問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Django 聯(lián)表查詢操作方法

    Django 聯(lián)表查詢操作方法

    作為一個(gè)django使用的新手,在做練手項(xiàng)目中對聯(lián)表查詢感覺比較生疏,最近兩天整理了一些連表查詢應(yīng)用場景和使用方法以及無法使用django中ORM操作的原生查詢,對Django 聯(lián)表查詢操作感興趣的朋友跟隨小編一起看看吧
    2023-09-09
  • Python入門學(xué)習(xí)之Python流處理過程

    Python入門學(xué)習(xí)之Python流處理過程

    本篇文章屬于Python入門篇,本文主要教大家學(xué)習(xí)Python流處理過程,通過Faust流處理庫來為大家詳細(xì)講解,有需要的朋友可以借鑒參考下
    2021-09-09
  • Python 位置參數(shù)基礎(chǔ)教程示例

    Python 位置參數(shù)基礎(chǔ)教程示例

    這篇文章主要為大家介紹了Python 位置參數(shù)基礎(chǔ)教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Python數(shù)據(jù)結(jié)構(gòu)之棧、隊(duì)列的實(shí)現(xiàn)代碼分享

    Python數(shù)據(jù)結(jié)構(gòu)之棧、隊(duì)列的實(shí)現(xiàn)代碼分享

    這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)之棧、隊(duì)列的實(shí)現(xiàn)代碼分享,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-12-12
  • 無懼面試,帶你搞懂python 裝飾器

    無懼面試,帶你搞懂python 裝飾器

    這篇文章主要介紹了python 裝飾器的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下
    2020-08-08
  • 如何通過安裝HomeBrew來安裝Python3

    如何通過安裝HomeBrew來安裝Python3

    這篇文章主要介紹了如何通過安裝HomeBrew來安裝Python3,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • Python實(shí)用庫 PrettyTable 學(xué)習(xí)筆記

    Python實(shí)用庫 PrettyTable 學(xué)習(xí)筆記

    這篇文章主要介紹了Python實(shí)用庫 PrettyTable 學(xué)習(xí)筆記,結(jié)合實(shí)例形式分析了Python表格操作庫PrettyTable的安裝、使用技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2019-08-08
  • matplotlib繪制多子圖共享鼠標(biāo)光標(biāo)的方法示例

    matplotlib繪制多子圖共享鼠標(biāo)光標(biāo)的方法示例

    這篇文章主要介紹了matplotlib繪制多子圖共享鼠標(biāo)光標(biāo)的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01

最新評論

郑州市| 盱眙县| 翁牛特旗| 万源市| 宣恩县| 新竹市| 且末县| 会昌县| 甘孜| 穆棱市| 铜川市| 龙口市| 崇州市| 张掖市| 孝昌县| 芦溪县| 博爱县| 汪清县| 彭山县| 汶上县| 寿光市| 沙洋县| 甘德县| 永寿县| 和平县| 清水河县| 新疆| 黄骅市| 资源县| 双辽市| 德江县| 临夏县| 遂平县| 南川市| 景东| 汪清县| 洛宁县| 塘沽区| 砀山县| 津南区| 玉溪市|