【发布时间】: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