생물학적 시스템에서 상호 작용하는 파트너를 나타내는 두 개의 데이터 프레임에 열이 있으므로 gene_A가 gene_B와 상호 작용하면 'gene_pair'열의 항목이 {gene_A, gene_B}가됩니다. 나는 내부를하고 싶어 가입하지만, 시도 : 나는에 병합 할 수 없습니다 말할 수두 세트의 팬더 데이터 프레임을 병합하는 방법
pd.merge(df1, df2, how='inner', on=['gene_pair'])
지금까지,
TypeError: type object argument after * must be a sequence, not itertools.imap
내가 정렬되지 않은 쌍에 병합하는 데 필요한 오류가 발생합니다 유전자 이름이있는 두 개의 개별 열의 조합. 이 병합을 수행하는 다른 방법이 있습니까?
몇 가지 예를 들어 DFS :
gene_pairs1 = [
set(['gene_A','gene_B']),
set(['gene_A','gene_C']),
set(['gene_D','gene_A'])
]
df1 = pd.DataFrame({'r_name': ['r1','r2','r3'], 'gene_pair': gene_pairs1})
gene_pairs2 = [
set(['gene_A','gene_B']),
set(['gene_F','gene_A']),
set(['gene_C','gene_A'])
]
df2 = pd.DataFrame({'function': ['f1','f2','f3'], 'gene_pair': gene_pairs2})
pd.merge(df1,df2,how='inner',on=['gene_pair'])
내가 'F3'로 줄 수있는 'F1'과 'R2'최대 항목 'R1'라인을 싶습니다.
당신은이 방법을 보여줍니다 샘플 DF1 및 DF2를 제공 할 수 있습니까? –