如何解决错误:计算数据帧中出现的次数时无需重复
我尝试计算数据框中每个表情符号(在表情符号库中)的出现次数。 我的方法:
emoji_cnt = [[] for i in range(len(list(emoji.UNICODE_EMOJI.keys())))]
j = 0
for key,value in emoji.UNICODE_EMOJI.items():
emoji_cnt[j].append(key)
j = j+1
for k in emoji_cnt:
s = df["Message"].str.count(k[0]).sum()
k.append(s)
确实有效。我试图打印出数字(在循环中)并且它有效。但是程序如何停止,我收到以下错误:
File "C:\Users\USER\anaconda3\lib\sre_parse.py",line 668,in _parse
raise source.error("nothing to repeat",error: nothing to repeat
我在 Anaconda 和 Python 3.8 上使用 Spyder。
非常感谢你们:)
来自维也纳的亲切问候!
解决方法
于是找到了方法。 我不得不将 thge 模块用于正则表达式。 所以:
import re
.
.
.
emoji_cnt = [[] for i in range(len(list(emoji.UNICODE_EMOJI.keys())))]
j = 0
for key,value in emoji.UNICODE_EMOJI.items():
emoji_cnt[j].append(key)
j = j+1
for k in emoji_cnt:
s = df["Message"].str.count(re.escape(k[0])).sum()
k.append(s)
re.escape(k[0]) 会将 k[0] 中的 Emoji 变成正则表达式。
:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。