python数据预处理–excel文件批量读取、筛选、生成tsv格式数据


前言

各个领域都需要批量处理一些数据文件(如:.xls、.xlsx等),并且需要进行一些筛选操作才能得到目标数据(想要的数据),另外还有些生成其他数据格式的需求。针对这一系列的操作本文就记录一下我的过程。

注:环境是Anaconda 的 Spyder(Python3.8)

提示:以下是本篇文章正文内容,下面案例可供参考

一、批量读取excel文件

找到目标文件夹,批量读取文件夹中.xlsx格式的文件。注:文件夹目录是path,该文件夹下保存着需要读取的所有.xlsx文件。
代码如下

import pandas as pd
import os

path = "C:/Users/HUAWEI/Desktop/2022.5.11/Part1-点读" #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
data = []#读取数据存放的变量

#遍历文件夹
for file in files: 
    #读取目标路径的文件
    data = pd.read_excel(path+"/"+file)#此时获得的data 是dataframe结构,即键对应的属性结构

二、筛选数据

思路:
1、读取的数据data为dataframe,可以运用.loc()筛选符合要求的某几列(参考:链接: https://blog.csdn.net/weixin_45082522/article/details/106364847)
代码如下:

#将data中列名'Category'的值等于'Fixation'的行筛选出来,并将列名为'X','Y','Event'的三列筛选出来存到p
p = data.loc[data['Category'] == 'Fixation',['X','Y','Event']]

2、列名更改(看需求)

#列名为'X','Y','Event'更改为'start_x','start_y','duration'
p.rename(columns={'X':'start_x','Y':'start_y','Event':'duration'},inplace=True)    

三、另存数据

将筛选完成的数据批量生成tsv格式存储,也可以是csv格式,参数稍作改变即可(后缀变为.csv,“\t"变为”,")。
注:没有指定路径,会跟.py文件生成在同一文件夹中,可自行指定路径

portion = os.path.splitext(file)#portion为名称和后缀分离后的列表
p.to_csv(portion[0]+'.tsv',sep="\t", index=False)#批量生成对原来读取的.xlsx的文件名+'.tsv'格式

代码汇总

import pandas as pd
import os

path = "C:/Users/HUAWEI/Desktop/2022.5.11/Part1-点读" #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
data = []

for file in files: 
    #遍历文件夹
    data = pd.read_excel(path+"/"+file)#打开文件读取目标路径的文件        
    p = data.loc[data['Category'] == 'Fixation',['X','Y','Event']]
    p.rename(columns={'X':'start_x','Y':'start_y','Event':'duration'},inplace=True)            
    portion = os.path.splitext(file)#portion为名称和后缀分离后的列表
    #生成.tsv格式文件
    p.to_csv(portion[0]+'.tsv',sep="\t", index=False)   
  • 1
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值