Converti NumPy Array in Pandas DataFrame
Questo tutorial spiega come convertire un array numpy in un Pandas DataFrame usando il metodo pandas.DataFrame()
.
Passiamo l’array numpy nel metodo pandas.DataFrame()
per generare Pandas DataFrame da array NumPy. Possiamo anche specificare nomi di colonne e indici di riga per DataFrame.
Converti NumPy Array in Pandas DataFrame usando il metodo pandas.DataFrame()
Passiamo l’array NumPy nel metodo pandas.DataFrame()
per generare il DataFrame dall’array NumPy.
from numpy import random
import pandas as pd
random.seed(5)
random.randint(100, size=(3, 5))
data_array = random.randint(100, size=(4, 3))
print("NumPy Data Array is:")
print(data_array)
print("")
data_df = pd.DataFrame(data_array)
print("The DataFrame generated from the NumPy array is:")
print(data_df)
Produzione:
NumPy Data Array is:
[[27 44 77]
[75 65 47]
[30 84 86]
[18 9 41]]
The DataFrame generated from the NumPy array is:
0 1 2
0 27 44 77
1 75 65 47
2 30 84 86
3 18 9 41
Per prima cosa crea un array casuale di dimensione (4,3)
con 4 righe e 3 colonne. Quindi passiamo l’array come argomento al metodo pandas.DataFrame()
, che genera DataFrame chiamato data_df
dall’array. Per impostazione predefinita, il metodo pandas.DataFrame()
inserirà nomi di colonna e indici di riga predefiniti.
Possiamo anche impostare i nomi delle colonne e gli indici delle righe usando i parametri index
e columns
del metodo pandas.DataFrame()
.
from numpy import random
import pandas as pd
random.seed(5)
random.randint(100, size=(3, 5))
data_array = random.randint(100, size=(4, 3))
row_indices = ["Row_1", "Row_2", "Row_3", "Row_4"]
column_names = ["Column_1", "Column_2", "Column_3"]
print("NumPy Data Array is:")
print(data_array)
print("")
data_df = pd.DataFrame(data_array, index=row_indices, columns=column_names)
print("The DataFrame generated from the NumPy array is:")
print(data_df)
Produzione:
NumPy Data Array is:
[[27 44 77]
[75 65 47]
[30 84 86]
[18 9 41]]
The DataFrame generated from the NumPy array is:
Column_1 Column_2 Column_3
Row_1 27 44 77
Row_2 75 65 47
Row_3 30 84 86
Row_4 18 9 41
Qui, impostiamo il valore di index
su row_indices
, una lista contenente gli indici di ciascuna riga. Allo stesso modo, assegniamo i nomi delle colonne impostando il valore di columns
alla lista column_names
, che contiene il nome di ciascuna colonna.
In alcuni casi, l’array NumPy stesso può contenere indici di riga e nomi di colonna. Quindi utilizziamo lo slicing dell’array per estrarre i dati, gli indici di riga e i nomi delle colonne dall’array.
import numpy as np
import pandas as pd
marks_array = np.array(
[["", "Mathematics", "Economics"], ["Sunny", 25, 23], ["Alice", 23, 24]]
)
print("NumPy Data Array is:")
print(marks_array)
print("")
row_indices = marks_array[1:, 0]
column_names = marks_array[0, 1:]
data_df = pd.DataFrame(
data=np.int_(marks_array[1:, 1:]), index=row_indices, columns=column_names
)
print("The DataFrame generated from the NumPy array is:")
print(data_df)
Produzione:
NumPy Data Array is:
[['' 'Mathematics' 'Economics']
['Sunny' '25' '23']
['Alice' '23' '24']]
The DataFrame generated from the NumPy array is:
Mathematics Economics
Sunny 25 23
Alice 23 24
Abbiamo indici di riga e nomi di colonna nell’array NumPy stesso. Selezioniamo tutti i valori dopo la prima riga e la prima colonna e li forniamo come argomento data
alla funzione pandas.DataFrame()
e selezioniamo tutti i valori della prima colonna dalla seconda riga e li passiamo come un index
discussione. Allo stesso modo, selezioniamo tutti i valori della prima riga dalla seconda colonna e lo passiamo come argomento columns
per impostare i nomi delle colonne.
numpy.array()
convertirà i valori interi in valori stringa mentre crea un array NumPy per garantire lo stesso formato dei dati dell’array. Usiamo la funzione numpy.int_()
per riconvertire i valori dei dati nel tipo integer
.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedInArticolo correlato - Pandas DataFrame
- Come ottenere le intestazioni delle colonne DataFrame Pandas come lista
- Come cancellare la colonna DataFrame Pandas DataFrame
- Come convertire la colonna DataFrame in data e ora in pandas
- Converti un Float in un Integer in Pandas DataFrame
- Ordina Pandas DataFrame in base ai valori di una colonna
- Ottieni l'aggregato di Pandas Group-By e Sum