文本文件的例子是图片
根据文件,数据的方向将在“"”章节之后改变。 换句话说,阅读方向从水平变为垂直。
为了解决这个大问题,我在pandas模块中找到read_fwf并应用它但失败了。
linefwf = pandas.read_fwf('File.txt', widths=[33,33,33], header=None, nwors = 3)
类别(章节,标题,作业)之间的差距为33。
但命令(linefwf)打印所有页面行,其中包括水平类别,如标题,日期,预留以及空白行。
请,我想知道'如何仅导出垂直数据'
答案 0 :(得分:6)
让我在黑暗中采取刺:你希望把这个表变成一个列(又名"垂直类别"),忽略其他列?
我没有准确的文字,所以我估计它。我的列宽与您的不同([11,21,31]
)并且我省略了nwors
参数(您可能意味着使用nrows
,但在这种情况下它是多余的)。虽然列规范不是很精确,但是几秒钟的摆弄让我觉得可行DataFrame
:
这是读入数据集的典型特征。让我们稍微清理它,给它真正的列名,并取出分隔符行:
df.columns = list(df.loc[0])
df = df.ix[2:6]
这具有以下效果:
将df
留给我们:
我们不会花时间重新索引行。假设我们想要列的值,我们可以通过索引来获取它:
df['Chapter']
收率:
2 1-1
3 1-2
4 1-3
5 1-4
6 1-5
Name: Chapter, dtype: object
或者,如果您不希望它不是pandas.Series
而是原生Python list
:
list(df['Chapter'])
收率:
['1-1', '1-2', '1-3', '1-4', '1-5']