Come risolvere: il primo argomento deve essere un iterabile di oggetti panda, hai passato un oggetto di tipo “dataframe”;


Un errore comune che potresti riscontrare quando usi Python è:

 TypeError: first argument must be an iterable of pandas objects, you passed an object
           of type "DataFrame"

Questo errore si verifica in genere quando si tenta di utilizzare la funzione concat() per aggiungere due DataFrame Panda insieme senza mettere i nomi DataFrame tra parentesi.

L’esempio seguente mostra come risolvere questo errore nella pratica.

Come riprodurre l’errore

Supponiamo di avere i seguenti due DataFrames panda:

 import pandas as pd

#create first DataFrame
df1 = pd. DataFrame ({' x ': [25, 14, 16, 27, 20,15, 14],
                    ' y ': [5, 7, 7, 5, 7, 6, 9],
                    ' z ': [8, 8, 10, 6, 6, 9, 6]})

print (df1)

    X Y Z
0 25 5 8
1 14 7 8
2 16 7 10
3 27 5 6
4 20 7 6
5 15 6 9
6 14 9 6

#create second DataFrame 
df2 = pd. DataFrame ({' x ': [58, 60, 65],
                    ' y ': [14, 22, 23],
                    ' z ': [9, 12, 19]})

print (df2)

    X Y Z
0 58 14 9
1 60 22 12
2 65 23 19

Supponiamo ora di provare a utilizzare la funzione concat() per aggiungere i due DataFrame in un singolo DataFrame:

 #attempt to add two DataFrames together
combined = pd. concat (df1, df2, ignore_index= True )

#view final DataFrame
print (combined)

TypeError: first argument must be an iterable of pandas objects, you passed an object
of type "DataFrame"

Stiamo ricevendo un errore perché non siamo riusciti a racchiudere i nomi DataFrame tra parentesi nella funzione concat() .

Come correggere l’errore

Il modo per risolvere questo errore è semplicemente racchiudere i nomi DataFrame tra parentesi quadre nella funzione concat() come segue:

 #append two DataFrames together
combined = pd. concat ([df1, df2], ignore_index= True )

#view final DataFrame
print (combined)

    X Y Z
0 25 5 8
1 14 7 8
2 16 7 10
3 27 5 6
4 20 7 6
5 15 6 9
6 14 9 6
7 58 14 9
8 60 22 12
9 65 23 19

Tieni presente che questa volta siamo in grado di combinare con successo i due DataFrame senza errori.

Risorse addizionali

I seguenti tutorial spiegano come correggere altri errori comuni in Python:

Come risolvere il problema in Python: l’oggetto ‘numpy.ndarray’ non è richiamabile
Come risolvere il problema: TypeError: l’oggetto “numpy.float64” non è richiamabile
Come risolvere il problema: Errore di tipo: oggetto stringa o byte previsto

Aggiungi un commento

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