在 Python 中将行从一个 CSV 附加到另一个

caa*_*aax 3 python csv merge dataset pandas

我已经为此查看了许多解决方案,但找不到适合我想做的事情的解决方案。

基本上我有2个CSV文件:

所有.csv

1   Wed Oct 03  41.51093923 41.51093923 41.51093923 41.51093923         
2   Wed Oct 04                          
3   Wed Oct 05  41.43764015 41.43764015 41.43764015             
4   Wed Oct 06  41.21395681 41.21395681 41.21395681             
5   Wed Oct 07  42.07607442 42.07607442 42.07607442             
6   Wed Oct 08  42.0074109  42.0074109  42.0074109              
7   Wed Oct 09  41.21395681 41.21395681                 
8   Wed Oct 10  41.43764015 41.43764015 41.43764015 41.43764015 
9   Wed Oct 11  41.21395681 41.21395681 41.21395681 41.21395681
Run Code Online (Sandbox Code Playgroud)

原始文件

10  Wed Oct 12  41.43764015             
11  Wed Oct 13                  
12  Wed Oct 14  42.07607442 42.07607442 42.07607442     
13  Wed Oct 15  41.43764015 41.43764015 41.43764015 41.43764015
14  Wed Oct 16  41.21395681 41.21395681 41.21395681 41.21395681
15  Wed Oct 17                  
16  Wed Oct 18  42.07607442 42.07607442 42.07607442 
Run Code Online (Sandbox Code Playgroud)

我想通过简单地将所有行放入并将它们合并到最后一行下面来附加original.csv到:all.csvoriginal.csvall.csv

1   Wed Oct 03  41.51093923 41.51093923 41.51093923 41.51093923         
2   Wed Oct 04                          
3   Wed Oct 05  41.43764015 41.43764015 41.43764015             
4   Wed Oct 06  41.21395681 41.21395681 41.21395681             
5   Wed Oct 07  42.07607442 42.07607442 42.07607442             
6   Wed Oct 08  42.0074109  42.0074109  42.0074109              
7   Wed Oct 09  41.21395681 41.21395681                 
8   Wed Oct 10  41.43764015 41.43764015 41.43764015 41.43764015 
9   Wed Oct 11  41.21395681 41.21395681 41.21395681 41.21395681
10  Wed Oct 12  41.43764015             
11  Wed Oct 13                  
12  Wed Oct 14  42.07607442 42.07607442 42.07607442     
13  Wed Oct 15  41.43764015 41.43764015 41.43764015 41.43764015
14  Wed Oct 16  41.21395681 41.21395681 41.21395681 41.21395681
15  Wed Oct 17                  
16  Wed Oct 18  42.07607442 42.07607442 42.07607442 
Run Code Online (Sandbox Code Playgroud)

如您所见,数据没有标题,行的长度各不相同。这只是我正在使用的文件类型的一个示例,但我想获得一个可以处理任何 CSV 的解决方案。

我正在使用 Python3,到目前为止已经尝试使用该pandas库,但没有运气。

任何建议都会很棒,谢谢。

Ald*_*ven 5

您不需要使用pandas. 只需将一个 csv 附加到另一个:

with open('original.csv', 'r') as f1:
    original = f1.read()

with open('all.csv', 'a') as f2:
    f2.write('\n')
    f2.write(original)
Run Code Online (Sandbox Code Playgroud)

输出:

1   Wed Oct 03  41.51093923 41.51093923 41.51093923 41.51093923
2   Wed Oct 04
3   Wed Oct 05  41.43764015 41.43764015 41.43764015
4   Wed Oct 06  41.21395681 41.21395681 41.21395681
5   Wed Oct 07  42.07607442 42.07607442 42.07607442
6   Wed Oct 08  42.0074109  42.0074109  42.0074109
7   Wed Oct 09  41.21395681 41.21395681
8   Wed Oct 10  41.43764015 41.43764015 41.43764015 41.43764015
9   Wed Oct 11  41.21395681 41.21395681 41.21395681 41.21395681
10  Wed Oct 12  41.43764015
11  Wed Oct 13
12  Wed Oct 14  42.07607442 42.07607442 42.07607442
13  Wed Oct 15  41.43764015 41.43764015 41.43764015 41.43764015
14  Wed Oct 16  41.21395681 41.21395681 41.21395681 41.21395681
15  Wed Oct 17
16  Wed Oct 18  42.07607442 42.07607442 42.07607442
Run Code Online (Sandbox Code Playgroud)