遮罩十六进制/二进制和计数1的Pandas数据框

时间:2019-02-28 22:36:04

标签: python pandas binary counting masking

所以我有了这个数据框,其中一列包含十六进制值。

然后我得到了这个面具:

mask = 0b 0000 0100 0010 0001

我想要做的是用上述掩码掩码十六进制值,然后计算1的数量,但是我希望能够一次在整个dataframe列上执行该操作。

这是我尝试过的代码:

dataframe['tempCount1'] = bin(dataframe['Hex'] & mask).count("1")

但是它返回错误:

TypeError: 'Series' object cannot be interpreted as an integer

我知道这部分代码将起作用:

    for x in range(len(dataframe['Hex'])):
        dataframe['tempCount1'][x] = bin(dataframe['Hex'][x] & mask).count("1")

但是要获得100,000个条目需要花费超过10分钟的时间,而我有超过1,700,000个条目。

有人认为他们知道一种更好的方法吗?

0 个答案:

没有答案