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

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



前言

考虑到进行机器学习、深度学习训练、预测时我们不免接触到许许多多的数据,而这些数据又以不同的格式存在(主要有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 pd
data=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库来处理

相关文章
|
2月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
158 4
|
9月前
|
SQL 自然语言处理 数据库
【Azure Developer】分享两段Python代码处理表格(CSV格式)数据 : 根据每列的内容生成SQL语句
本文介绍了使用Python Pandas处理数据收集任务中格式不统一的问题。针对两种情况:服务名对应多人拥有状态(1/0表示),以及服务名与人名重复列的情况,分别采用双层for循环和字典数据结构实现数据转换,最终生成Name对应的Services列表(逗号分隔)。此方法高效解决大量数据的人工处理难题,减少错误并提升效率。文中附带代码示例及执行结果截图,便于理解和实践。
227 4
|
10月前
|
数据采集 JSON 测试技术
如何在Python中高效实现CSV到JSON的数据转换
在实际项目中,数据格式转换是常见问题,尤其从CSV到JSON的转换。本文深入探讨了多种转换方法,涵盖Python基础实现、数据预处理、错误处理、性能优化及调试验证技巧。通过分块处理、并行处理等手段提升大文件转换效率,并介绍如何封装为命令行工具或Web API,实现自动化批量处理。关键点包括基础实现、数据清洗、异常捕获、性能优化和单元测试,确保转换流程稳定高效。
484 83
|
8月前
|
Python
[oeasy]python086方法_method_函数_function_区别
本文详细解析了Python中方法(method)与函数(function)的区别。通过回顾列表操作如`append`,以及随机模块的使用,介绍了方法作为类的成员需要通过实例调用的特点。对比内建函数如`print`和`input`,它们无需对象即可直接调用。总结指出方法需基于对象调用且包含`self`参数,而函数独立存在无需`self`。最后提供了学习资源链接,方便进一步探索。
199 17
|
存储 开发者 Python
Python 中的数据结构与其他编程语言数据结构的区别
不同编程语言都有其设计理念和应用场景,开发者需要根据具体需求和语言特点来选择合适的数据结构
469 151
|
数据处理 Python
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
这篇文章介绍了如何使用Python读取Excel文件中的数据,处理后将其保存为txt、xlsx和csv格式的文件。
606 3
Python实用记录(十):获取excel数据并通过列表的形式保存为txt文档、xlsx文档、csv文档
|
数据挖掘 数据处理 索引
python 读取数据存为csv
在Python中,读取数据并将其保存为CSV(逗号分隔值)文件是一种常见的操作,特别适用于数据分析和数据科学领域。这里将展示如何使用Python的内置库`csv`和流行的数据处理库`pandas`来完成这项任务。 ### 使用`csv`模块 如果你正在处理的是简单的文本数据或者需要更低层次的控制,可以使用Python的`csv`模块。以下是一个基本示例,演示如何将数据写入CSV文件: ```python import csv # 假设这是你要写入CSV的数据 rows = [ ["Name", "Age", "City"], ["Alice", 24, "New Yor
287 36
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
198 1
|
存储 大数据 数据处理
Python 中的列表推导式与生成器:特性、用途与区别
Python 中的列表推导式与生成器:特性、用途与区别
199 2
|
存储 C语言 Python
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
241 2

推荐镜像

更多