错误:计算数据框中的出现次数时无需重复

Posted

技术标签:

【中文标题】错误:计算数据框中的出现次数时无需重复【英文标题】:Error: nothing to repeat when counting occurences in dataframe 【发布时间】:2021-04-27 03:04:46 【问题描述】:

我尝试计算数据框中每个表情符号(在表情符号库中)的出现次数。 我的做法:

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。

非常感谢你们:)

来自维也纳的亲切问候!

【问题讨论】:

【参考方案1】:

所以找到了方法。 我不得不将 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变成正则表达式。

:)

【讨论】:

以上是关于错误:计算数据框中的出现次数时无需重复的主要内容,如果未能解决你的问题,请参考以下文章

如何计算R中数据框中字符串中“c(\”)的出现次数?

平均观察在 Pandas 数据框中出现的总次数 [重复]

Python:计算python数据框中每个数字的出现次数

计算火花数据框中所有列(300 列)的每个不同值的出现次数

解析错误 - 其他

如何在 2 个数据框中映射和计算项目的出现次数