我有2个数据框
例如:
df1:
seq_id1 seq_id2
seq1_A seq2_B
seq2_A seq3_B
seq4_A seq9_B
seq9_A seq9_B
etc
和另一个数据框,例如
df2:
sequences
seq2_A
seq9_A
并且仅保留在第一个数据帧中,即数据帧中存在 ID 的行,此处为:
合并新数据框:
seq_id1 seq_id2
seq2_A seq3_B
seq9_A seq9_B
感谢您的帮助:)
这里。是数据框=
第一个只有 60 行:df1
第二个包含所有 seq ID:df2
这里,第一个 df 中的列 ["#qseqid'"]
必须与列 ["seq2_id"]
最佳答案
我相信需要将列 seq_id1
与 df2['sequences']
相匹配,使用 isin
与 boolean indexing
:
df1[df1['seq_id1'].isin(df2['sequences'])]
或者:
df = pd.merge(df1, df2, left_on='seq_id1', right_on='sequences')
如果需要匹配df1
的两列:
df1[df1.isin(df2['sequences']).any(axis=1)]
关于python - 合并2个数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50370410/