Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich zwei Pandas DataFrames in Python horizontal (spaltenweise) kombinieren, ähnlich der Funktion „cbind“ in R?

Wie kann ich zwei Pandas DataFrames in Python horizontal (spaltenweise) kombinieren, ähnlich der Funktion „cbind“ in R?

Barbara Streisand
Barbara StreisandOriginal
2024-10-27 08:35:03564Durchsuche

How can I combine two Pandas DataFrames horizontally (column-wise) in Python, similar to the `cbind` function in R?

Zeilen zweier Datenrahmen in Pandas verketten

Frage:
Wie kann ich zwei Datenrahmen horizontal (spaltenweise) in Python kombinieren? Pandas-Bibliothek, ähnlich der cbind-Funktion in R?

Lösung:
Um Datenrahmen horizontal zu verketten, ohne Schlüssel zu berücksichtigen, verwenden Sie die Funktion pd.concat() mit dem Parameter axis=1 . Dieser Parameter gibt die Verkettung entlang der Spalten an:

<code class="python">result = pd.concat([df_a, df_b], axis=1)</code>

Beispiel:
Betrachten Sie das folgende Beispiel:

<code class="python">import pandas as pd

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)

result = pd.concat([df_a, df_b], axis=1)

print(result)</code>

Ausgabe:

        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  

Wie Sie sehen können, hat der resultierende Datenrahmen die gleiche Anzahl von Zeilen und Spalten wie die Summe der beiden ursprünglichen Datenrahmen.

Alternative Methoden:
Zusätzlich zu pd.concat() können Sie auch merge() oder join() für die blinde Spaltenverkettung verwenden. Diese Methoden erfordern jedoch übereinstimmende Indizes oder Schlüssel zwischen den Datenrahmen:

<code class="python"># Using merge()
result = df_a.merge(df_b, left_index=True, right_index=True)

# Using join()
result = df_a.join(df_b)</code>

Das obige ist der detaillierte Inhalt vonWie kann ich zwei Pandas DataFrames in Python horizontal (spaltenweise) kombinieren, ähnlich der Funktion „cbind“ in R?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn