Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 与熊猫一起加入2个CSV_Python_Pandas_Csv - Fatal编程技术网

Python 与熊猫一起加入2个CSV

Python 与熊猫一起加入2个CSV,python,pandas,csv,Python,Pandas,Csv,我有2个CSV(emails1.CSV和emails2.CSV) 我需要的是将这两个CSV合并为一个,因为它们太大,无法使用excel 我需要导出到CSV和TXT 我所做的是创建一个Python文件: import csv import pandas as pd import numpy as np df1 = pd.read_csv("emails1.csv") df2 = pd.read_csv("emails2.csv") df3 = pd.merge(df1, df2, on=["e

我有2个CSV(emails1.CSV和emails2.CSV)

我需要的是将这两个CSV合并为一个,因为它们太大,无法使用excel

我需要导出到CSV和TXT

我所做的是创建一个Python文件:

import csv
import pandas as pd
import numpy as np

df1 = pd.read_csv("emails1.csv")
df2 = pd.read_csv("emails2.csv")

df3 = pd.merge(df1, df2, on=["email"])
df3.to_csv("final.csv",index=False)
CSV只有电子邮件列


谢谢您的帮助。

您错过了加入两个
数据帧的方法。
我只是对给定的代码做了一个小小的调整,它工作得非常完美

import csv
import pandas as pd
import numpy as np

df1 = pd.read_csv("emails1.csv")
df2 = pd.read_csv("emails2.csv")

df3 = df1.merge(df2, on=["email"], how='outer')
df3.to_csv("final.csv",index=False)
请注意
如何
参数,以及调用
合并
的方式

这是
emails1.csv

email
one@gmail.com
two@gmail.com
email
three@gmail.com
four@gmail.com
这是
emails2.csv

email
one@gmail.com
two@gmail.com
email
three@gmail.com
four@gmail.com
这是执行我的代码后的
final.csv

email
one@gmail.com
two@gmail.com
three@gmail.com
four@gmail.com
我希望这就是你想要的。
:-)干杯

那么,您只想从两个CSV加载并合并电子邮件列,而不关心其他列?对不起,不是concat,是pd.merge吗?在这种情况下,您可以提供一些示例输入和预期输出吗?很难理解您想要什么。输出如下:email1 email1 email1 email2 email2 email2。。。我不知道怎么解释。@jvera不,那不是我问的。我希望您从CSV中获取5行以及预期输出,并使用编辑链接将其添加到问题中。如果你能做到这一点,那么就有可能帮助你。谢谢!,你的代码工作,但我搜索了更多,我发现了你的代码的一个变体:这是你的代码:df3=df1.merge(df2,on=[“email”],how='outer')df3.to_csv(“final.csv”,index=False)这是变体:df3=pd.merge(df1,df2,on=[“email”],how='outer'))df3.to_csv(“final.csv”,index=False)两者都可以工作,但是,为什么要使用df1.merge?有什么不同?另外,您是如何避免电子邮件中的电子邮件2的?因为跳过列的名称。谢谢关于跳过栏目名称,这是熊猫自己做的一个很酷的小把戏。无论何时将csv文件加载到dataframe中,它都会自动将第一行作为列标题行,并将其下方的行作为实际数据。如果您觉得不方便,我想您可以通过在阅读时传递某个参数来避免,如果我没记错的话,我猜“header=False”。关于“merge”的调用方式。。。事实证明我们今天都学到了新东西。当然,合并也行!事实上,它更容易被“接受”。到目前为止,我一直在使用df.merge,这就是我指出这一点的原因。谢谢汉克斯!很好的解释!另一件事,我怎么做加入几个文件?我的意思是,这只适用于2个文件,但是如果我有更多的文件呢?看看熊猫“concat”文档。这就解决了所有问题。