Come usare rbind in python (equivalente a r)


La funzione rbind in R, abbreviazione di row-bind , può essere utilizzata per combinare insieme i frame di dati in base alle loro righe.

Possiamo usare la funzione pandas concat() per eseguire la funzione equivalente in Python:

 df3 = pd. concat ([df1, df2])

I seguenti esempi mostrano come utilizzare questa funzione nella pratica.

Esempio 1: utilizzare rbind in Python con colonne uguali

Supponiamo di avere i seguenti due DataFrames panda:

 import pandas as pd

#define DataFrames
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'],
                    ' points ': [99, 91, 104, 88, 108]})

print (df1)

  team points
0 to 99
1 B 91
2 C 104
3 D 88
4 E 108

df2 = pd. DataFrame ({' assists ': ['F', 'G', 'H', 'I', 'J'],
                    ' rebounds ': [91, 88, 85, 87, 95]})

print (df2)

  team points
0 F 91
1 G 88
2:85
3 I 87
4 days 95

Possiamo usare la funzione concat() per collegare rapidamente questi due DataFrame tramite le loro linee:

 #row-bind two DataFrames
df3 = pd. concat ([df1, df2])

#view resulting DataFrame
df3

	team points
0 to 99
1 B 91
2 C 104
3 D 88
4 E 108
0 F 91
1 G 88
2:85
3 I 87
4 days 95

Tieni presente che possiamo anche utilizzare reset_index() per reimpostare i valori dell’indice del nuovo DataFrame:

 #row-bind two DataFrames and reset index values
df3 = pd. concat ([df1, df2]). reset_index (drop= True )

#view resulting DataFrame
df3

	team points
0 to 99
1 B 91
2 C 104
3 D 88
4 E 108
5 F 91
6 G 88
7:85 a.m.
8 I 87
9 D 95

Esempio 2: utilizzo di rbind in Python con colonne non uguali

Possiamo anche utilizzare la funzione concat() per collegare insieme due DataFrame che hanno un numero di colonne diverso ed eventuali valori mancanti verranno semplicemente riempiti con NaN:

 import pandas as pd

#define DataFrames
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E'],
                    ' points ': [99, 91, 104, 88, 108]})

df2 = pd. DataFrame ({' team ': ['F', 'G', 'H', 'I', 'J'],
                    ' points ': [91, 88, 85, 87, 95],
                    ' rebounds ': [24, 27, 27, 30, 35]})

#row-bind two DataFrames
df3 = pd. concat ([df1, df2]). reset_index (drop= True )

#view resulting DataFrame
df3

	team points rebounds
0 to 99 NaN
1 B 91 NaN
2 C 104 NaN
3 D 88 NaN
4 E 108 NaN
5 F 91 24.0
6G 88 27.0
7:85 AM 27.0
8 I 87 30.0
9 D 95 35.0

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre funzioni comuni in Python:

Come usare cbind in Python (equivalente a R)
Come eseguire una CERCA.VERT in Panda
Come eliminare righe contenenti un valore specifico in Pandas

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *