Concaténer des lignes de deux dataframes dans Pandas
Pour concaténer horizontalement deux dataframes, df_a et df_b, avec un nombre égal de lignes sans tenir compte des clés , utilisez la fonction concat avec le paramètre axis défini sur 1 :
<code class="python">pd.concat([df_a, df_b], axis=1)</code>
Par exemple, considérons les deux dataframes suivants :
<code class="python">dict_data = {'Treatment': ['C', 'C', 'C'], 'Biorep': ['A', 'A', 'A'], 'Techrep': [1, 1, 1], 'AAseq': ['ELVISLIVES', 'ELVISLIVES', 'ELVISLIVES'], 'mz':[500.0, 500.5, 501.0]} df_a = pd.DataFrame(dict_data) dict_data = {'Treatment1': ['C', 'C', 'C'], 'Biorep1': ['A', 'A', 'A'], 'Techrep1': [1, 1, 1], 'AAseq1': ['ELVISLIVES', 'ELVISLIVES', 'ELVISLIVES'], 'inte1':[1100.0, 1050.0, 1010.0]} df_b = pd.DataFrame(dict_data)</code>
En utilisant la fonction concat avec axis=1, nous peut concaténer ces dataframes par colonne :
<code class="python">pd.concat([df_a, df_b], axis=1)</code>
Cela donnera un dataframe avec le même nombre de lignes (3) et le nombre de colonnes égal à la somme des colonnes dans les deux dataframes (9) :
AAseq Biorep Techrep Treatment mz AAseq1 Biorep1 Techrep1 \ 0 ELVISLIVES A 1 C 500.0 ELVISLIVES A 1 1 ELVISLIVES A 1 C 500.5 ELVISLIVES A 1 2 ELVISLIVES A 1 C 501.0 ELVISLIVES A 1 Treatment1 inte1 0 C 1100 1 C 1050 2 C 1010
Notez que comme il n'y a pas de colonnes qui se chevauchent, le dataframe fusionné combine directement les colonnes en une seule table.
De plus, vous pouvez fusionner les dataframes en utilisant leurs indices puisqu'ils ont le même nombre de lignes, ce qui donne le même résultat :
<code class="python">df_a.merge(df_b, left_index=True, right_index=True)</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!