Création d'un DataFrame Pandas avec un tableau numpy contenant plusieurs types
Je veux créer une pandas dataframe avec les valeurs par défaut de zéro, mais une colonne de nombres entiers et l'autre de chars. Je suis capable de créer un tableau numpy avec le bon type, voir la values
variable ci-dessous. Cependant, lorsque je passe dans le dataframe constructeur, il ne renvoie NaN valeurs (voir df
ci-dessous). J'ai inclure le type de code qui renvoie un tableau de float(voir df2
)
import pandas as pd
import numpy as np
values = np.zeros((2,3), dtype='int32,float32')
index = ['x', 'y']
columns = ['a','b','c']
df = pd.DataFrame(data=values, index=index, columns=columns)
df.values.dtype
values2 = np.zeros((2,3))
df2 = pd.DataFrame(data=values2, index=index, columns=columns)
df2.values.dtype
Des suggestions sur la façon de construire le dataframe?
source d'informationauteur bfcondon
Vous devez vous connecter pour publier un commentaire.
Voici quelques options que vous pourriez choisir à partir de:
Chacune des options ci-dessus produisent le même résultat
avec dtypes:
Pourquoi
pd.DataFrame(values, index=index, columns=columns)
produit un DataFrame avec NaNs:values
est structuré un tableau avec les noms de colonnesf0
f1
f2
:Si vous passez l'argument
columns=['a', 'b', 'c']
àpd.DataFrame
puis les Pandas vont regarder pour les colonnes avec les noms dans la structure de la matrice devalues
. Lorsque ces colonnes ne sont pas trouvés, les Pandas lieuxNaN
s dans le DataFrame pour représenter les valeurs manquantes.