719*_*016 7 python dataframe tsv
在带有标题的python中读取多列tsv文件的最简洁方法是什么,但第一列没有标题,而是包含每行的行号?
这显然是来自R数据帧的文件的常见格式.
例:
A B C
1 a1 b1 c1
2 a2 b2 c2
3 a3 b3 c3
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
小智 19
取决于您之后要对数据做什么(如果文件真的是带有\ t分隔符的tsv).如果你只想在一组列表中使用它,你可以csv像这样使用模块:
import csv
with open("tsv.tsv") as tsvfile:
tsvreader = csv.reader(tsvfile, delimiter="\t")
for line in tsvreader:
print line[1:]
Run Code Online (Sandbox Code Playgroud)
但是,我还建议使用DataFrame模块来pandas处理简单python操作之外的任何事情.它可以这样使用:
from pandas import DataFrame
df = DataFrame.from_csv("tsv.tsv", sep="\t")
Run Code Online (Sandbox Code Playgroud)
DataFrames允许对数据集进行高级操作,例如添加列,查找平均值等.
小智 5
df = DataFrame.from_csv("tsv.tsv", sep="\t") 自 0.21.0 版起已弃用
df = pd.read_csv("tsv.tsv", sep="\t") 是要走的路