Een pandas 3d dataframe maken (met voorbeeld)
U kunt de xarray- module gebruiken om snel een 3D-panda’s DataFrame te maken.
In deze zelfstudie wordt uitgelegd hoe u het volgende panda’s 3D DataFrame maakt met behulp van de xarray-modulefuncties:
product_A product_B product_C
year quarter
2021 Q1 1.624345 0.319039 50
Q2 -0.611756 0.319039 50
Q3 -0.528172 0.319039 50
Q4 -1.072969 0.319039 50
2022 Q1 0.865408 -0.249370 50
Q2 -2.301539 -0.249370 50
Q3 1.744812 -0.249370 50
Q4 -0.761207 -0.249370 50
Voorbeeld: Maak een Pandas 3D DataFrame
De volgende code laat zien hoe u een 3D-gegevensset maakt met behulp van xarray- en NumPy -functies:
import numpy as np
import xarray as xr
#make this example reproducible
n.p. random . seeds (1)
#create 3D dataset
xarray_3d = xr. Dataset (
{ " product_A ": (("year", "quarter"), np.random.randn (2,4))},
coordinates={
" year ": [2021, 2022],
" quarter ": ["Q1", "Q2", "Q3", "Q4"],
" product_B ": ("year", np. random . randn (2)),
" product_C ": 50,
},
)
#view 3D dataset
print (xarray_3d)
Dimensions: (year: 2, quarter: 4)
Coordinates:
* year (year) int32 2021 2022
* quarter (quarter) <U2 'Q1' 'Q2' 'Q3' 'Q4'
product_B (year) float64 0.319 -0.2494
product_C int32 50
Data variables:
product_A (year, quarter) float64 1.624 -0.6118 -0.5282 ... 1.745 -0.7612
Opmerking : de functie NumPy randn() retourneert voorbeeldwaarden uit de standaard normale verdeling .
We kunnen vervolgens de functie to_dataframe() gebruiken om deze dataset om te zetten in een panda’s DataFrame:
#convert xarray to DataFrame
df_3d = xarray_3d. to_dataframe ()
#view 3D DataFrame
print (df_3d)
product_A product_B product_C
year quarter
2021 Q1 1.624345 0.319039 50
Q2 -0.611756 0.319039 50
Q3 -0.528172 0.319039 50
Q4 -1.072969 0.319039 50
2022 Q1 0.865408 -0.249370 50
Q2 -2.301539 -0.249370 50
Q3 1.744812 -0.249370 50
Q4 -0.761207 -0.249370 50
Het resultaat is een 3D-panda’s DataFrame dat informatie bevat over het aantal verkopen van drie verschillende producten in twee verschillende jaren en vier verschillende kwartalen per jaar.
We kunnen de functie type() gebruiken om te bevestigen dat dit object inderdaad een Panda DataFrame is:
#display type of df_3d
type (df_3d)
pandas.core.frame.DataFrame
Het object is inderdaad een Panda DataFrame.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende functies in panda’s kunt uitvoeren:
Panda’s: unieke waarden in een kolom vinden
Panda’s: hoe je het verschil tussen twee lijnen kunt vinden
Panda’s: ontbrekende waarden tellen in DataFrame