Python 从两个CSV文件中提取同一列,并将其合并

Python 从两个CSV文件中提取同一列,并将其合并,python,csv,compare,Python,Csv,Compare,因此,我有两个CSV文件,我试图比较,并得到相同列的项目结果。第一个文件a.csv如下所示: name pubmedid country legge 3064733 U.S legge 3034763 U.S Hoffman 2888122 NA 第二个CSV是b.CSV,看起来像: name pubmedid country category Sung

因此,我有两个CSV文件,我试图比较,并得到相同列的项目结果。第一个文件a.csv如下所示:

name          pubmedid    country 
legge          3064733      U.S
legge          3034763      U.S
Hoffman        2888122      NA
第二个CSV是b.CSV,看起来像:

name          pubmedid    country  category
Sung           3454733      U.K    European
NA             2035763      U.S    American
Hoffman        3194992      NA     Asian
legge          3064733      U.S    African-American
我想从两个文件共有的列中提取信息

然后将其合并到一个CSV文件中 ,并删除包含“NA”的所有行

所以我想要的结果是:

name          pubmedid    country 
legge          3064733      U.S
legge          3034763      U.S
Sung           3454733      U.K   
legge          3064733      U.S   
然后我想把这个结果写在c.csv文件上

我该怎么做


我正试图找到一种不用pandas的方法,因为我还没有完全理解pandas是如何工作的,在阅读原始a、b csv文件时,我试图跳过包含“NA”的行,但我失败了。。。将两个文件合并在一起后删除包含NA的行是否更好?

1。使用熊猫:

使用:

这张照片是:

    name  pubmedid country
0  legge   3064733     U.S
1  legge   3034763     U.S
0   Sung   3454733     U.K
3  legge   3064733     U.S
要将此
df
保存到csv文件

df.to_csv("c.csv", index=False)

2。不使用熊猫:

使用:


1。使用熊猫:

使用:

这张照片是:

    name  pubmedid country
0  legge   3064733     U.S
1  legge   3034763     U.S
0   Sung   3454733     U.K
3  legge   3064733     U.S
要将此
df
保存到csv文件

df.to_csv("c.csv", index=False)

2。不使用熊猫:

使用:


您正在查找的两个文件的列中有哪些常见信息?@Shubham Sharma我正在尝试提取a.csv和b.csv中都涉及的列…a.csv没有类别列,因此我希望mege从名称到国家都有csv,而不是从您要查找的两个文件的列中删除包含哪些公共信息的行?@Shubham Sharma我正在尝试提取a.csv和b.csv中都涉及的列…a.csv没有类别列,因此我希望mege从名称到国家都包含csv,而不是删除包含NAThanks的行,以供您回复,但有没有其他可能的方法来解决这类问题而不使用pandas模块?可能,但使用pandas会更容易。我尝试了第二个解决方案的类似方法,但结果中包含了类别,并且没有跳过有“Na”的行。@goldenasian您确定吗?csv文件
a
b
中的分隔符是什么?非常确定它是“”,感谢您的友好回复,但是有没有其他可能的方法来解决此类问题而不使用pandas模块?可能但是使用pandas会更容易。我用第二个解决方案尝试了类似的方法,但它在结果中包含了类别,并且并没有跳过有“Na”的行。@goldenasian你们确定吗?csv文件
a
b
中的分隔符是什么?非常确定它是“”