python 删除csv文件中空值所在行

删除csv文件中空值所在行

img

pandas 一行语句就能完成对应操作,如果对你有帮助,帮忙采纳,多谢!

df.dropna(axis=0, how='any', inplace=True, subset=None)

# coding=gbk
import csv
import os
 
file_old = 'data/test_1.csv'
file_temp = 'data/test_temp.csv'
 
with open(file_old, 'r', newline='', encoding='gbk') as f_old, \
    open(file_temp, 'w', newline='', encoding='gbk') as f_temp:
    f_csv_old = csv.reader(f_old)
    f_csv_temp = csv.writer(f_temp)
    for i, rows in enumerate(f_csv_old):    # 保留header
        if i == 0:
            f_csv_temp.writerow(rows)
            break
    for rows in f_csv_old:
        if rows[0] != '':                  # 替换需要验证的列或者改为验证多列
            f_csv_temp.writerow(rows)
 
os.remove(file_old)
os.rename(file_temp, file_old)

用for循环一行一行读,哪行有空值删去即可