Holen Sie sich Top-n-Elemente jeder Zeile in einer spärlichen Matrix.
Nach dem LesenDie ähnliche Frage, ich kann immer noch nicht ganz verstehen, wie man die Lösung umsetzt, nach der ich suche. Ich habe eine spärliche Matrix, d.
import numpy as np
from scipy import sparse
arr = np.array([[0,5,3,0,2],[6,0,4,9,0],[0,0,0,6,8]])
arr_csc = sparse.csc_matrix(arr)
Ich würde gerne effizient Holen Sie sich die Top n Artikelvon jeder Reihe, ohne die dünne Matrix in eine dichte umzuwandeln. Das Endergebnis sollte wie folgt aussehen (n = 2 vorausgesetzt):
top_n_arr = np.array([[0,5,3,0,0],[6,0,0,9,0],[0,0,0,6,8]])
top_n_arr_csc = sparse.csc_matrix(top_n_arr)