Come convertire un Eigen::Matrix<double,Dynamic,Dynamic>
in un Eigen::SparseMatrix<double>
? Sto cercando un modo migliore invece di iterare attraverso la densa matriceEigen convertire la matrice densa in uno sparse
risposta
è possibile utilizzare il metodo sparseView() per questo:
sparse = dense.sparseView();
e anche specificare una tolleranza:
sparse = dense.sparseView(epsilon,reference);
Sei tu a controllare la creazione della matrice densa?
Se non lo fai, non c'è modo di farlo senza leggere ogni elemento matrix per vedere se è vuoto.
Se si sta creando la matrice densa da soli, è possibile creare una struttura dati per convertirla in sparse quando è necessario. Ad esempio, è possibile memorizzare con ciascuna riga della matrice il numero di elementi non nulli in quella riga. Quindi puoi saltare le righe con 0 elementi non nulli e puoi interrompere la conversione di qualsiasi riga una volta che hai visto tanti elementi non nulli come il conteggio ti dice.
Quali dati aggiuntivi vengono memorizzati dipende dai tipi di matrici sparse che ci si aspetta. Un comune schema a matrice sparsa è una sottomatrice densa che galleggia nella matrice sparsa. È impossibile modificare quelle regioni dense quando si crea la matrice densa. Per esempio. non memorizzare un conteggio di elementi per riga, ma piuttosto mantenere un elenco di regioni rettangolari non nulle a determinati x, y offset.
- 1. Come convertire la matrice sparsa in matrice densa in Eigen
- 2. Pandas sparse dataFrame alla matrice sparsa, senza generare una matrice densa in memoria
- 3. Come convertire Eigen :: Matrix4f in Eigen :: Affine3f
- 4. Come calcolare l'inversa della matrice sparsa nella libreria Eigen
- 5. Come inizializzare uno SparseVector in Eigen
- 6. Matrice di rotazione in Eigen
- 7. Matrice cross-product in Eigen
- 8. moltiplicazione matrice sparse veloce
- 9. C++ Eigen inizializza la matrice statica
- 10. moltiplicazione matrice sparse AVX2
- 11. Conversione pitone sparse dict matrice per SciPy matrici sparse
- 12. Come rappresentare la matrice di trasformazione Compact isometry in Eigen?
- 13. convertire la matrice in immagine
- 14. Applicare la funzione a tutti gli elementi della matrice Eigen
- 15. R - dati frame - convertire matrici sparse
- 16. Boost :: uBLAS vs Eigen
- 17. colonna Append alla matrice, utilizzando Eigen libreria
- 18. Generazione di una matrice densa da una matrice sparsa in NumPy pitone
- 19. Eigen - Verifica se la matrice è positiva (semi-) Definita
- 20. Matrice di puntatori a Eigen Matrices
- 21. Mappatura della matrice su una matrice Eigen esistente
- 22. Applicare PCA su matrice sparse molto grande
- 23. Ignorare le voci duplicate nella matrice sparse
- 24. json_encode sparse PHP matrice come JSON matrice, non JSON oggetto
- 25. Spostare la semantica in Eigen
- 26. python matplotlib plot pattern sparse matrix
- 27. Convertire la matrice di byte in decimale
- 28. Impossibile convertire la matrice in float python
- 29. convertire la matrice POST in json
- 30. convert dizionario in sparse matrix
Fammi capire questo. Vuoi convertire una matrice densa in una matrice sparsa senza verificare, quali voci sono zeri e devono essere eliminate e quali voci vuoi conservare? Come pensi che possa funzionare? Dovresti assolutamente lavorare su quella domanda - è molto chiaro. – angainor
Senza controllare gli elementi manualmente. Sto cercando un metodo o una funzione o una libreria per farlo. Ma da quello che ho letto qui penso che non sia possibile – tyranitar