我有一个格式为 df 的熊猫数据框:
col
1 ['A','B','C','D']
2 ['A','B','D','E']
3 ['C','D']
4 ['A','B','C']
我想为列中所有元素(例如('A','B'),('B','C')的唯一元素组合计算逐点PMI。>
根据我的理解,基于上面提供的Wikipedia链接,我相信公式看起来像(尽管我可能错了):
np.log(pair_frequency / (element_1_frequency * element_2_frequency) )
这里,该对可能是('A','B'),element_1可能是'A',element 2可能是'B'。
对于上面的结构(在pandas列中有列表列表),执行此操作的有效方法是什么?