导入大小不规则的文本文件

时间:2018-07-09 04:39:53

标签: python pandas import text-files

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

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

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

我已经尝试过pd.read_csv,但是无法将其设置为所需的尺寸。

任何建议都非常好。 谢谢 艾玛

Here是指向文本文件的链接。

1 个答案:

答案 0 :(得分: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)