Python-将数据从csv写入新csv,但行被覆盖

Python-将数据从csv写入新csv,但行被覆盖,python,csv,twitter,Python,Csv,Twitter,我在csv中有几千条Twitter推文,每行一条推文(每条推文之间有空行)。每行的每一列都包含tweet的不同部分(如时间、文本、语言、位置等),但并非每一列都有相同的信息(即:有时语言出现在列AG或AH或其他某个列中)。我试图通过创建一个只包含英语推文的新CSV来清理数据,并从每个(英语)推文中过滤掉标点符号 我目前一直在研究如何只过滤英文推文。这就是我到目前为止所做的: import csv f = open('twitDB.csv') csv_f = csv.reader(f) #

我在csv中有几千条Twitter推文,每行一条推文(每条推文之间有空行)。每行的每一列都包含tweet的不同部分(如时间、文本、语言、位置等),但并非每一列都有相同的信息(即:有时语言出现在列AG或AH或其他某个列中)。我试图通过创建一个只包含英语推文的新CSV来清理数据,并从每个(英语)推文中过滤掉标点符号

我目前一直在研究如何只过滤英文推文。这就是我到目前为止所做的:

import csv


f = open('twitDB.csv')
csv_f = csv.reader(f)   # csv_f is a list of lists

for row in csv_f:
    for col in row:
        if col == 'lang:"en"':
            with open('cleaned.csv', 'w') as fp:
                wr = csv.writer(fp, delimiter = ',')
                wr.writerow(row)
                wr.writerow('\n')
新的cleaned.csv仅包含第1行中的最后一条英语推文(数千条)。我有一种感觉,我的代码正在不断地覆盖cleaned.csv的第一行,而不是将每条tweet写入下一行,但我不确定如何解决这一问题。

您需要使用
open('cleaned.csv','a')
每次
'a'
都将
追加<代码>'w'
将打开并覆盖每次出现的内容。。这就是为什么您只看到一排