tsv、csv、xls等文件类型区别及处理(python版)

十二月的猫 2024-06-15 12:35:02 阅读 85

目录

前言

介绍

tsv、csv、txt的区别

读取/生成 不同格式数据文件(python)

 一、读取/生成csv数据文件

 二、读取/生成txt数据文件

三、读取/生成tsv数据文件

四、读取/生成xls数据文件

不同文件格式转化

总结 


前言

考虑到进行机器学习、深度学习训练、预测时我们不免接触到许许多多的数据,而这些数据又以不同的格式存在(主要有csv、xls、tsv三种格式),所以本文就想来讲讲这三种格式数据的转化、阅读、处理

介绍

txt文件:txt为纯文本文件,无格式,只保存内容字符,基本跨平台,不过受字符的编码影响(因为只保存字符编码,一般没特定的编码识别标志),需要选择对应字符解码方式才能正确读取(如GBK编码的字符用UTF-8解码会乱码)

csv文件:CSV是一种简单、实用的文件格式,用于存储和表示包括文本、数值等各种类型的数据。CSV 文件通常以 .csv 作为文件扩展名。这种文件格式的一个显著特点是:文件内的数据以逗号分隔,呈现一个表格形式。CSV 文件已广泛应用于存储、传输和编辑数据

tsv文件:TSV也是一种简单、实用的文件格式,与CSV一样用于存储和表示包括文本、数值等各种类型的数据。其显著特点是文件内的数据以指标符 '\t' 分隔

xls文件:xls是一个特有的二进制格式,核心结构属于复合型文档类型,是2003版本Office Microsoft Office Excel工作表保存的默认格式。新建Excel表格保存的后缀名为“.xls”。最普通的excel格式

xlsx文件:xlsx的核心结构是XML类型结构,采用了XML的压缩方式,使其占用的空间更小,xlsx中最后一个x的意义就在于此,它是Excel2007版本的文件。新建Excel表格默认保存的后缀名为“.xlsx”

xlsm文件:xlsm同xlsx一样是属于07年版本的保存文件。只有保存为xlsm文件格式时,才能够保存写在excel文件中的宏方法,也就是VBA语言程序。它的后缀名是“.xlsm”

doc文件:是office word的文档文件,是是二进制文档,数据结构复杂且保密(微软私有格式,破解的多只能读,写容易出问题,官方word读不回去) 

docx文件:是一种基于xml的zip包,开放格式,基本保证支持docx的都能通用读写。

pdf文件:是Adobe推出的文档交换格式,富文本,主要用于实现文档交换(如传阅和打印),对文字格式控制(可保证格式原样不变)和文档保护比doc好,同跨平台,属于开放标准

本文重点来讲讲标红的三种文件格式之间的转化以及文件处理(python语言)

tsv、csv、txt的区别

相同点: csv、tsv和txt都属于文本文件。不同点:csv和tsv文件的字段间分别由逗号tab键隔开,而txt文件则没有明确要求,可使用逗号/制表符/空格等 多种不同的符号。
文件类型 全称 字段间的分隔符
csv Comma-separated values 半角逗号(’,’)
tsv Tab-separated values 制表符(Tab,’\t’)
txt Text File 逗号/制表符/空格等,无固定格式

读取/生成 不同格式数据文件(python)

python中有一个库专门用来数据处理,这个库就是pandas。pandas能够对数据进行归一化、标准化、缺失值补全、异常值剔除等处理,当然也能够对不同的格式的数据文件进行读取、生成、转化。学会使用pandas库,将大大方便我的对数据的处理

下图为pandas库下不同格式数据文件读取、生成的函数名称(来源 官方文档):

 一、读取/生成csv数据文件

import pandas as pddata=pd.read_csv('./mydata.csv') #读取csv格式文件,mydata.csv为文件名data.to_csv('./my_new_data.csv') #生成csv格式文件,此时data中存储的是其他文件格式(例如xls)

read_csv函数默认的分隔符参数为‘,’,所以这里的read_csv('./mydata.csv')完整写法为read_csv('./mydata.csv',sep=',')。如果有需要我们也可以修改sep中的分隔符符号,去实现不同分隔符下数据的读取

read_csv函数读取后返回对象为DataFrame类型

 二、读取/生成txt数据文件

# 读取txt文件import pandas as pd# 调用read_table函数读取txt文件data = pd.read_table("./mydatat.txt")# 调用read_csv函数读取txt文件df = pd.read_csv("./my_new_data.txt",sep=',')

这里利用read_csv函数来读取txt文件时,这意味着txt文件中数据的分隔符需要是‘,’,否则将无法正确的解析数据

三、读取/生成tsv数据文件

import pandas as pd# 读取TSV文件data = pd.read_csv('data.tsv', sep='\t')

read_csv()函数通常来读取CSV文件,所以默认情况下,它会将逗号作为分隔符。为了读取TSV文件,我们需要使用read_csv()函数,并将分隔符参数设置为'\t'

四、读取/生成xls数据文件

import pandas as pd#读取xlsx文件转化为DataFrame格式存储在df中df=pd.read_excel('file.xlsx')#将DataFrame对象转化为xlsx文件格式df.to_excel('new_file.xlsx')

这两个函数同样可以生成xls文件。xls文件相比于xlsx文件安全系数更好,因为其是用二进制存储的,而xlsx文件是用xml格式存储的,xml格式是为了传输的

不同文件格式转化

一个思路:先将待转化文件格式读取为DataFrame格式,然后再利用DataFrame格式的to_函数转成不同格式文件

总结 

python中的pandas库是数据处理的一个利器,如果遇到数据处理的问题都可以利用pandas库来处理



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。