【问题标题】: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。

非常感谢你们:)

来自维也纳的亲切问候!

【问题讨论】:

    标签: python pandas dataframe spyder python-3.8


    【解决方案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变成正则表达式。

    :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-11
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      相关资源
      最近更新 更多