我正在尝试比较固定宽度的文件,我想在其中忽略某些字节进行比较。所以这就是我所做的:
- 我在 pandas 中使用 read_fwf 将文件加载到 df
- 我创建了一个函数来拼接指定列中要忽略的数据
- 然后使用 datacompy 我比较了数据。
结果显示所有行都不相等,但在检查时我可以看到数据、数据类型、数据长度都相同。
我正在使用索引进行字符串拼接。就像在 ColA 中我只需要索引中的数据 - 8:13 被忽略
可乐
qwerty 1234 11234
预期结果:
可乐
qwerty 11234
为此,我使用以下代码在比较之前从 dfs 中删除该数据:
a=8
b=13
df["ColA"] = df["ColA"].map(lambda x: x[0:a:]) + df["ColA"].map(lambda x: x[b+1::])
在比较步骤之前,我什至得到了预期的结果。
如果我比较两个差异数据帧在各自的列中具有相同的值,例如
df_1:
可乐
qwerty 11234
df_2:
可乐
qwerty 11234
结果不相等,但您可以看到数据中没有不匹配。我使用 == 运算符检查了它,它也返回 false。
我是 python 和数据处理的新手。任何帮助和建议将不胜感激。