2017-09-12 2 views
-1

J'ai un DF1Comment remplacer une valeur de colonne basée sur une autre image?

index | Institute 
----------------- 
0  | P001 
----------------- 
1  | P002 
----------------- 
2  | P001 
----------------- 
3  | Clinic C 

J'ai aussi DF2

CODE | Clinic 
-------------------- 
P001 | Clinic A 
-------------------- 
P002  | Clinic B 

Je voudrais carte DF1 avec DF2 et DF1 résultant devrait être

index | Clinic 
------------------ 
0  | Clinic A 
------------------ 
1  | Clinic B 
------------------ 
2  | Clinic A 
------------------ 
3  | Clinic C 

J'espère que je peux faire sens. Désolé si ce n'est pas le cas. Première fois poser une question ici.

Répondre

1

Utilisez replace par Series créée par set_index - valeurs de CODE colonne doivent être uniques:

#if CODE is index need s = df2['Clinic'] 
s = df2.set_index('CODE')['Clinic'] 
df1['Institute'] = df1['Institute'].replace(s) 
print (df1) 
    index Institute 
0  0 Clinic A 
1  1 Clinic B 
2  2 Clinic A 
3  3 Clinic C 
+0

Merci. Ça a marché! va apprendre à mieux formuler ma question :) – arshyMA