我有两个带有单列数据的csv文件。如何通过将第二个csv文件中的数据与第一个csv文件中的数据进行比较来就地删除第二个csv文件中的数据?例如:
import csv
reader1 = csv.reader(open("file1.csv", "rb"))
reader = csv.reader(open("file2.csv", "rb"))f
for line in reader:
if line in reader1:
print line
答案 0 :(得分:0)
如果两个文件都只是单个列,那么您可以使用set
删除差异。但是,这假定每个文件中的条目不需要重复,并且它们的顺序并不重要。
#since each file is a column, unroll each file into a single list:
dat1 = [x[0] for x in reader1]
dat2 = [y[0] for y in reader]
#take the set difference
dat1_without_dat2 = set(dat1).difference(dat2)