【发布时间】:2017-12-08 21:30:20
【问题描述】:
我有一个用竖线分隔的数据文件,但有时空值在两个分隔符之间没有数据,导致分隔符被放置在相应的列中,而后面的列被填充为 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 列仅包含一个 | 字符。
出现此问题的实际数据的 sn-p:
...|0||||||USD|...
因为文件很大,所以想避免逐行处理,在分隔符之间加空格的方案。使用 pandas 或其他包来处理此类问题是否有另一种更有效的选择?
【问题讨论】:
-
您要加载什么样的文件? .txt、.csv、.xls、.xlsx、.dat??
-
文件是一大块竖线分隔的文本