想要对已有的8000多列csv,添加2000多列,由于文件过大,不能一次性加载到内存中,所以想一列一列的写入到已有的csv中,试了很多中方法,都不行,请问该怎么解决
按行读入,然后加入这些列啊。CSV一般都是逗号分隔的文本文件,按照文本文件的处理方法处理就行。一般流程就是:1.读入一行2.以逗号切分字符串为数组3.给数组加上你想要的列元素4.以逗号为分隔连接数组5.将这行写入新文件6.一直到文件结尾即可。
pandas有分块读取,示例代码
import pandas as pd reader = pd.read_csv('a.csv', iterator=True) header = True try: df = reader.get_chunk(10000) #循环加添新列到df df['新列'] = '值' #把记录追加到新csv df.to_csv('b.csv', mode='a', index=False, header=header) #文件头只写一次 header = False except StopIteration: pass
按行读入,然后加入这些列啊。CSV一般都是逗号分隔的文本文件,按照文本文件的处理方法处理就行。一般流程就是:
1.读入一行
2.以逗号切分字符串为数组
3.给数组加上你想要的列元素
4.以逗号为分隔连接数组
5.将这行写入新文件
6.一直到文件结尾即可。
pandas有分块读取,示例代码