【问题标题】:Importing an irregular sized text file导入不规则大小的文本文件
【发布时间】:2018-07-09 04:39:52
【问题描述】:

我想将一个包含 11576 行和 7 列的文本文件导入到 pandas 数据框中,然后对其进行整形,使其具有 229 行和 351 列。

在文本文件中,每 34 行左右,有 2 个空格(即该行的第 6 列和第 7 列没有值)。

此时我想对数据进行切片并将所有先前的数据分配为第一行,但是我不知道如何在该点切割数据并将其全部放在一行中。

我尝试过pd.read_csv,但无法达到我需要的尺寸。

任何建议都会非常棒。 谢谢 艾玛

Here 是文本文件的链接。

【问题讨论】:

标签: python pandas import text-files


【解决方案1】:

我相信需要read_csv 创建DataFrame 然后numpy.reshape 选择所有没有最后2 的列:

df = pd.read_csv('fieldgen_out1.txt', skiprows=1, header=None, sep='\s+')
#print (df)

#[351 rows x 229 columns]
df = pd.DataFrame(df.values.reshape(351, -1)[:, :-2])
#print (df)

然后如果需要转置:

#[229 rows x 351 columns]
df = pd.DataFrame(df.values.reshape(351, -1)[:, :-2].T)
#print (df)

【讨论】:

    猜你喜欢
    • 2012-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多