要处理的推文列表

时间:2019-05-11 21:57:29

标签: python data-science

我目前正在处理此数据科学问题,尝试遍历存储在过滤后的tweet列表中的每条tweet时都遇到问题,这并不意味着将其发送给新功能进行进一步清理

k1_tweets_filtered只是一系列删除了少于20个字符的推文的推文。我现在想做的是将该列表发送到另一个函数以进一步处理,但它只做1条推文。该列表是通过搜索Twitter占据的。

问题在于它只在第一条推文中这样做,而没有其他任何事情。我需要它来处理该列表中的所有推文。看看k1_tweets_filtered的len,它的512,然后经过处理的len只显示14。也许我的循环是错误的?

谢谢您的帮助!

代码:

k1_tweets_processed = []
for tweet in k1_tweets_filtered:
    k1_tweets_processed = pre_process(tweet_k1)
def pre_process(doc):
    doc = doc.lower()
    # getting rid of non ascii codes
    doc = remove_non_ascii(doc)

    # replacing URLs
    url_pattern = "http://[^\s]+|https://[^\s]+|www.[^\s]+|[^\s]+\.com|bit.ly/[^\s]+"
    doc = re.sub(url_pattern, 'url', doc) 

    punctuation = r"\(|\)|#|\'|\"|-|:|\\|\/|!|\?|_|,|=|;|>|<|\.|\@"
    doc = re.sub(punctuation, ' ', doc)

    return [w for w in doc.split() if len(w) > 2]

对于一条推文它工作正常,但是我试图将其中的每条推文的整个列表发送给它,以便对其进行正确处理。最终列表应该正确处理每条推文,而不是仅处理第一条。

1 个答案:

答案 0 :(得分:0)

看起来您正在将列表的值设置为函数的输出。相反,您需要在for循环中使用类似以下内容的内容添加到列表中:

for tweet in k1_tweets_filtered:   
    k1_tweets_processed.append(pre_process(tweet))

如果有帮助,请接受答案。