如果csv文件中带"\n"的字段较多,读入为dataframe数据后想要去除是比较麻烦一点的,但在数据分析时是必须要去掉才能进行数据分析,那么有没有一种比较简单快捷的方式?
如图,带"\n"的csv挺讨厌的
经过尝试,总结出两种相对靠谱的方法,下面一起来看看
方法一
读入文件并去除"\n"后写入新的文件,新的文件即已经去除"\n"
分三步:
1、读入文件
2、去除“\n”
3、写入新的文件
示例代码:
path='C:/Video_1.csv'
with open(path,encoding='utf-8') as fin:
with open('video.csv','w',newline='',encoding='utf-8') as fout:
r = csv.reader(fin) #读入文件
w = csv.writer(fout) #写入文件
for row in r:
row = [col.replace('\n', '').replace('\r', '') for col in row] #将"\n"替换为无
w.writerow(row) #写入新文件
运行结果,在保存的工作目录下生成新的文件
方法二
不重新写入新文件,去除"\n"后直接读入为dataframe格式
示例代码:
path='C:/Video_1.csv'
list_r = []
with open(path,encoding='utf-8') as f:
r = csv.reader(f)
for row in r:
row = [col.replace('\n', '').replace('\r', '') for col in row]
list_r.append(row)
df = pd.DataFrame(list_r[1:],columns=list_r[0])
df.head()
运行结果: