读取分隔符之间没有数据的数据文件

时间:2017-12-08 21:30:21

标签: python pandas

我有一个以管道分隔的数据文件,但有时空值不会在两个分隔符之间有数据,导致分隔符字符放在相应的列中,后面的列用NaN值填充。

我创建数据帧的代码:

for DF_Exec in pd.read_table(ExecSrcFile, sep='|', chunksize=5000, header=1, low_memory=False, na_filter=True, index_col=False):
    # process data here

文件中的每一行都是212列,但我会举例说明哪些情况不起作用

...|80|strdata|\x00|90.0| |...

这些都很好用。分隔符之间的空格或空符号将被处理得很好。

...|80|strdata|||strdata|...

这将映射到4列而不是5列,这会导致上一个预期列中的空值。在这种情况下,第3列仅包含|个字符。

显示此问题的实际数据片段:

...|0||||||USD|...

因为文件非常大,我想避免逐行处理它以在分隔符之间添加空格的解决方案。是否有另一种更有效的选择来使用pandas或其他包处理这类问题?

1 个答案:

答案 0 :(得分:0)

您是否尝试过使用pandas.read_csv(ExecSrcFile, sep='|')