大佬教程收集整理的这篇文章主要介绍了如何使我的数据帧的 Ngram 字典以一些字符串 Python 使用成对 recipe from itertools 更新,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有dataframe
这样的
ID name cat subcat
-------------------------------
1 aa bb cc A a-a
2 bb cc dd B b-a
3 aa bb ee C c-a
4 aa gg cc D d-a
我想制作 Dict
这个 dataframe
其中包含最多 Ngram
个这样的两个词
aa bb : 2
bb cc : 2
cc dd : 1
bb ee : 1
aa gg : 1
gg cc : 1
from itertools import combinations,chain
def pairwise(iterablE):
"s -> (s0,s1),(s1,s2),(s2,s3),..."
a,b = tee(iterablE)
next(b,NonE)
return zip(a,b)
pd.Series(chain(*df['name'].str.split(' ')
.apply(lambda x: pairwise(X))))\
.value_counts()
输出:
(aa,bb) 2
(bb,cC) 2
(cc,dd) 1
(bb,eE) 1
(aa,gg) 1
(gg,cC) 1
dtype: int64
IIUC,你可以试试这样的:
from itertools import combinations,chain
pd.Series(list(chain(*df['name'].str.split(' ')
.apply(lambda x: list(combinations(x,2))))))\
.value_counts()
输出:
(aa,bb) 2
(aa,cC) 2
(bb,dd) 1
(cc,dd) 1
(aa,eE) 1
(bb,cC) 1
dtype: int64
以上是大佬教程为你收集整理的如何使我的数据帧的 Ngram 字典以一些字符串 Python 使用成对 recipe from itertools 更新全部内容,希望文章能够帮你解决如何使我的数据帧的 Ngram 字典以一些字符串 Python 使用成对 recipe from itertools 更新所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。