C'est probablement facile, mais j'ai les données suivantes:
Dans le bloc de données 1:
index dat1
0 9
1 5
Dans la trame de données 2:
index dat2
0 7
1 6
Je veux un bloc de données avec la forme suivante:
index dat1 dat2
0 9 7
1 5 6
J'ai essayé d'utiliser la append
méthode, mais j'obtiens une jointure croisée (c'est-à-dire un produit cartésien).
Quelle est la bonne façon de procéder?
join
méthode?Réponses:
Il semble en général que vous recherchez simplement une jointure:
la source
pd.concat([dat1, dat2], axis=1)
dans ce cas.Vous pouvez aussi utiliser:
la source
InvalidIndexError: Reindexing only valid with uniquely valued Index objects
, vous pouvez utiliser:pd.concat([dat1.reset_index(), dat2], axis=1)
Les deux
join()
et laconcat()
manière pourraient résoudre le problème. Cependant, il y a un avertissement que je dois mentionner: Réinitialisez l'index avant vousjoin()
ouconcat()
si vous essayez de traiter un bloc de données en sélectionnant des lignes d'un autre DataFrame.Un exemple ci-dessous montre un comportement intéressant de join et concat:
la source
En fait:
la source
Juste une question de la bonne recherche Google:
la source