我有2个固定宽度的文件如下(唯一的变化是日期值从第14位开始)。在
sample_hash1.txt
GOKULKRISHNA 04/17/2018
ABCDEFGHIJKL 04/17/2018
111111111111 04/17/2018
sample_hash2.txt
^{pr2}$使用pandas read_fwf我正在读取此文件并创建一个数据帧(通过排除只加载前13个字符的日期值)。所以我的数据帧是这样的。在
import pandas as pd
df1 = pd.read_fwf("sample_hash1.txt", colspecs=[(0,13)])
df2 = pd.read_fwf("sample_hash2.txt", colspecs=[(0,13)])
df1
GOKULKRISHNA
0 ABCDEFGHIJKL
1 111111111111
df2
GOKULKRISHNA
0 ABCDEFGHIJKL
1 111111111111
现在我尝试在每个数据帧上生成一个哈希值,但是哈希值不同。我不知道这是怎么回事。有人能用灯光照一下吗?我必须确定文件中的数据是否有任何变化(不包括日期列)。在
print(hash(df1.values.tostring()))
-3571422965125408226
print(hash(df2.values.tostring()))
5039867957859242153
我正在将这些文件(每个文件大约2GB大小)加载到表中。每次我们从源接收完整的文件时,有时数据没有变化(除了最后一列的日期)。所以我的想法是拒绝这些文件。因此,如果我可以在文件上生成哈希值并存储在某个地方(在表中),那么下次我可以将新的文件哈希值与存储的哈希值进行比较。所以我认为这是正确的方法。但还是坚持哈希生成。在
我查过这个帖子 Most efficient property to hash for numpy array 但这不是我要找的
使用字符串表示dataframe。在
或者
^{pr2}$相关问题 更多 >
编程相关推荐