【问题标题】:Python: removing duplicate letters from tweetsPython:从推文中删除重复的字母
【发布时间】:2017-11-01 13:22:00
【问题描述】:

亲爱的程序员们,您好, 社交媒体 cmets 包括许多以使用许多字符为特征的随意语言。一个例子是:“Helloooooo!”。 为了分析,我想删除这些超过 2 的重复字母并将它们替换为精确的 2 个字母。我们的例子是“你好!”。 我找到了相应的正则表达式。但它也将我的行数从 500.000 减少到 450.000。有些行现在包含多条推文,而不仅仅是一条。

虚线示例(以下文本应拆分为 3 行,而不是输出文件中的 1 行:

z .. :)"

"USERNAME Am Wochenende gabs das halt für 10 und das DLC für 2,50. Und da das Guthaben hier rumfliegt.. hab ich zugeschlagen :D"

"Wenn das keine #Leseempfehlung ist! Vielen Dank. :) #krimi #sauerland #lesen #lesetipp #rezension URL

处理代码:

#repeating letters are set to a limit of 2
#errror: Output file loses 50000 columns. WHy?
import re
with open("C:/Users/M/PycharmProjects/Bachelor_Thesis/test/data_feat2.csv","r", encoding="utf-8") as oldfile1, open('data_feat3.csv', 'w',encoding="utf-8") as newfile1:
    for line in oldfile1:
        line=re.sub(r'(.)\1+', r'\1\1', line) 
        newfile1.write(line)
newfile1.close()

【问题讨论】:

  • 您能否发布几行输入文件作为示例(如果您可以发布一些消失的行更好)?
  • 欢迎来到 StackOverflow。请阅读并遵循帮助文档中的发布指南。 Minimal, complete, verifiable example 适用于此。在您发布 MCVE 代码并准确描述问题之前,我们无法有效地帮助您。最重要的是,您能否发布一个 MCVE,例如问题的一个子集,说明在 10 列中丢失 2 列,而只有 20 行输入?

标签: python regex python-3.x twitter nlp


【解决方案1】:

可能有重复的逗号,它们是否被转义了?在你的 csv 中搜索?

要尝试的另一件事是使用 csv 模块读取文件并在每一列上单独运行正则表达式。这会慢得多,但会帮助您调试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-05
    • 2017-03-11
    • 2018-07-17
    • 1970-01-01
    • 2019-02-28
    • 2019-07-03
    • 1970-01-01
    相关资源
    最近更新 更多