【发布时间】:2016-06-04 17:51:43
【问题描述】:
我有 3 个很长(100K+ 元素)的不同产品名称的向量。每个向量都有不同的长度。我想做的是计算每个产品有多少个向量。所以是这样的:
v1 = ['product1','product2','product3']
v2 = ['product3','product1','product5','product7','product10']
v3 = ['product1','product10']
'product1' 3
'product2' 1
'product3' 2
'product5' 1
'product7' 1
'product10' 2
产品可能在向量中以任何顺序排列,并且在向量中每个产品只出现一次。
我想在这里使用 pandas DataFrame,但所有列的长度必须相同。基于行的简单求和也不起作用,因为同一产品可能位于每列的不同行。
有谁知道最好的方法是什么?我知道我可以做简单的暴力循环,但如果我可以使用 numpy 或 pandas 的东西,我不想这样做。
【问题讨论】:
-
如果某个向量中没有重复项
pd.value_counts(v1 + v2 + v3)应该这样做。 -
@ayhan 你是对的,它也有效。谢谢!