脚本专栏 
首页 > 脚本专栏 > 浏览文章

如何使用pandas读取txt文件中指定的列(有无标题)

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

最近在倒腾一个txt文件,因为文件太大,所以给切割成了好几个小的文件,只有第一个文件有标题,从第二个开始就没有标题了。

我的需求是取出指定的列的数据,踩了些坑给研究出来了。

import pandas as pd
# 我们的需求是 取出所有的姓名
# test1的内容
'''
id name score
1  张三 100
2  李四 99
3  王五 98
'''
test1 = pd.read_table("test1.txt") # 这个是带有标题的文件
names = test1["name"] # 根据标题来取值
print(names)
'''
张三
李四
王五
'''

# test2的内容
'''
4  Allen 100
5  Bob 99
6  Candy 98
'''
test2 = pd.read_table("test2.txt", header=None) # 这个是没有标题的文件
names = test2[1] # 根据index来取值 
print(names)
'''
Allen
Bob
Candy
'''

如何使用pandas读取txt文件中指定的列(有无标题)

补充知识:关于python中pandas读取txt文件注意事项

语法:pandas.read_table()

参数:

filepath_or_buffer 文件路径或者输入对象
sep 分隔符,默认为制表符
names 读取哪些列以及读取列的顺序,默认按顺序读取所有列
engine 文件路径包含中文的时候,需要设置engine = ‘python'
encoding 文件编码,默认使用计算机操作系统的文字编码
na_values 指定空值,例如可指定null,NULL,NA,None等为空值

常见错误:设置不全

import pandas
data = pandas.read_table(‘D/anaconda/数据分析/文本.txt',
engine=‘python')
print(data)

输出结果:

如何使用pandas读取txt文件中指定的列(有无标题)

补全代码:

import pandas
data = pandas.read_table(‘D/anadondas/数据分析/文本.txt',
sep = ‘,' ,#指定分隔符‘,',默认为制表符
names = [‘names',‘age'],#设置列名,默认将第一行数据作为列名
engine = ‘python',
encoding = ‘utf8'#指定编码格式)
print(data)

输出结果:

如何使用pandas读取txt文件中指定的列(有无标题)

以上这篇如何使用pandas读取txt文件中指定的列(有无标题)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

上一篇:Python IDE环境之 新版Pycharm安装详细教程
下一篇:Python Handler处理器和自定义Opener原理详解
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap