Je crée une matrice à partir d'une trame de données Pandas comme suit:
dense_matrix = np.array(df.as_matrix(columns = None), dtype=bool).astype(np.int)
Et puis dans une matrice clairsemée avec:
sparse_matrix = scipy.sparse.csr_matrix(dense_matrix)
Existe-t-il un moyen de passer d'une matrice df directement à une matrice clairsemée?
Merci d'avance.
df.values
est un tableau numpy, et l'accès aux valeurs de cette façon est toujours plus rapide que np.array
.
scipy.sparse.csr_matrix(df.values)
Vous devrez peut-être d'abord effectuer la transposition, comme df.values.T
. Dans DataFrames, les colonnes sont l'axe 0.