我可以在新列中读取B.csv并写入A.csv而不读取A.csv吗?

2024-03-29 06:30:42 发布

您现在位置:Python中文网/ 问答频道 /正文

(csv文件)记录每天从股票网站上爬行的股票价格

Stock_num     Stock_name       20201201
0001           appl             201.3
0002           goog            1001.5

B(csv文件)来自同一股票网站的最新数据爬网

Stock_num     Stock_name       20201202
0001           appl               208.3 
0002           goog               999.8

我想使用pandas将B写入以下格式的A中(不读取A)

Stock_num     Stock_name       20201201    20201202
0001           appl             201.3         208.3 
0002           goog            1001.5         999.8

我试过以下方法: B.to_csv('A.csv',index=False,mode='a', encoding='utf_8_sig')

但我得到的是:

Stock_num     Stock_name       20201201
0001           appl               201.3
0002           goog              1001.5
Stock_num     Stock_name       20201202
0001           appl               208.3 
0002           goog               999.8

我知道我可以用b.csv读取A.csv和concat,然后输出。 但是有没有一种方法可以将B.csv写入a.csv而不读取a.csv


1条回答
网友
1楼 · 发布于 2024-03-29 06:30:42

看看dask是否有助于它更快地运行。您仍在读取这两个文件,但使用dask可以加快数百倍/提高内存效率:

import dask.dataframe as dd
A = dd.read_csv('Desktop/A.csv')
B = dd.read_csv('Desktop/B.csv')
df = A.merge(B)
df = df.compute()
df.to_csv('C.csv', index=False)

相关问题 更多 >