ToB企服应用市场:ToB评测及商务社交产业平台
标题:
Python按条件删除Excel表格数据的方法
[打印本页]
作者:
水军大提督
时间:
2024-8-9 12:09
标题:
Python按条件删除Excel表格数据的方法
本文介绍基于
Python
语言,读取
Excel
表格文件,基于我们给定的规则,对其中的数据加以
筛选
,将
不在指定命据范围内
的数据剔除,保留
符合我们必要
的数据的方法。
起首,我们来明白一下本文的具体需求。现有一个
Excel
表格文件(在本文中我们就以.csv格式的文件为例),如下图所示。
其中,
Excel
表格文件具有大量的数据,
每一列
表示某一种
属性
,
每一行
表示某一个
样本
;我们必要做的,就是对于其中的部分属性加以数据筛选——比方,我们希望对上图中第一列的数据进行筛选,将其中大于2或小于-1的部分选出来,并将
每一个所选出的单位格
对应的
行
直接删除;同时,我们还希望对其他的属性同样加以筛选,不同属性筛选的条件也各不相同,但都是必要将不符合条件的单位格所在的
整行
都删除。最终,我们保留下来的数据,就是符合我们必要的数据,此时我们必要将其保存为一个新的
Excel
表格文件。
明白了需求,我们即可开始代码的撰写;本文用到的具体代码如下所示。
# -*- coding: utf-8 -*-
"""
Created on Wed Jun 7 15:40:50 2023
@author: fkxxgis
"""
import pandas as pd
original_file = "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/23_Train_model_NoH/Train_Model_1_NoH.csv"
result_file = "E:/01_Reflectivity/99_Model_Training/00_Data/02_Extract_Data/23_Train_model_NoH/Train_Model_1_NoH_New.csv"
df = pd.read_csv(original_file)
df = df[(df["inf"] >= -0.2) & (df["inf"] <= 18)]
df = df[(df["NDVI"] >= -1) & (df["NDVI"] <= 1)]
df = df[(df["inf_dif"] >= -0.2) & (df["inf_dif"] <= 18)]
df = df[(df["NDVI_dif"] >= -2) & (df["NDVI_dif"] <= 2)]
df = df[(df["soil"] >= 0)]
df = df[(df["inf_h"] >= -0.2) & (df["inf_h"] <= 18)]
df = df[(df["ndvi_h"] >= -1) & (df["ndvi_h"] <= 1)]
df = df[(df["inf_h_dif"] >= -0.2) & (df["inf_h_dif"] <= 18)]
df = df[(df["ndvi_h_dif"] >= -1) & (df["ndvi_h_dif"] <= 1)]
df.to_csv(result_file, index = False)
复制代码
上述代码可以直接对
DataFrame
对象加以一次性的筛选,不消
每筛选一次就保存一次
了。
运行本文提及的代码,我们即可在指定的结果文件夹下获得数据筛选后的文件了。
至此,大功告成。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4