当某些行与另一个数据帧匹配时,创建一个具有两列一个数据帧的新数据帧

时间:2018-01-26 01:47:14

标签: python python-3.x pandas dataframe

我有两个大数据帧。 “基因”具有这样的结构(虽然超过三列):

Mutation ID   CDS         Mutation AA
COSM1000525   123         V617A 
COSM1003371   234         S517A
COSM1003372   456         T417A
COSM1004880   567         K317A
COSM1004881   1234        R610A
COSM1004883   1234        V617A
COSM1004884   543         W617A
COSM1006396   132         Y617A
COSM1007340   7654        V617A

“输出”是"基因"的一部分。并且只有一列Mutation ID

Mutation ID             
COSM1000525   
COSM1003372                   
COSM1004881   

当Mutation ID与“output”中的匹配时,我想创建一个新的数据框,其中包含“gene”的两列(Mutation IDMutation AA)。

如何在python中实现它?

1 个答案:

答案 0 :(得分:0)

Pandas Indexing and Selecting Data是一个很好的指南。

mut_filter = set(output['Mutation ID'])
df = gene.loc[gene['Mutation'].isin(mut_filter), ['Mutation ID', 'Mutation AA']]