当数据为二进制时,不返回所有唯一值

2024-04-19 22:39:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我注意到在二进制数据列上使用unique()函数时出现了一些不寻常的行为,在该列中并非返回所有值。你知道吗

R = pd.DataFrame(data=np.random.choice([10. , 20., 30.], size=20), columns=['A'])
R.loc[:, 'B'] = R.A.apply(lambda x: struct.pack('f', x))
print len(R.A.unique()), len(R.B.unique()), len(np.unique(R.B))
print R.B.unique(), np.unique(R.B)

它回来了

3 1 3
['\x00\x00 A'] ['\x00\x00 A' '\x00\x00\xa0A' '\x00\x00\xf0A']

运行R.B.value_count()时返回三个值。你知道吗

R.Bdtypedtype('O')。你知道吗

我正在使用熊猫版本0.21.0


Tags: 数据函数dataframedatasizelennp二进制