Mám nelineárnu maticu N x N v Matlab, ktorá má bunkové hodnoty indexované párom (r, c) tak, že r a c sú jedinečné ID.
Problém je, že po prevode tejto matice na Python sa všetky hodnoty indexov znižujú o 1.
Napríklad:
Before After
(210058,10326) = 1 (210057,10325) = 1
V súčasnosti sa snažím čeliť týmto problémom:
mat_contents = sparse.loadmat(filename)
G = mat_contents["G"]
I,J = G.nonzero()
I += 1
J += 1
V = G.data
G = sparse.csr_matrix((V,(I,J)))
Tiež som sa pokúsil použiť rôzne možnosti scipy.sparse.io.loadmat
{matlab_compatible, mat_dtype}, ale ani nepracovali.
Hľadám riešenie, ktoré mi dárovnaké indexy ako matrica Matlab. Riešenia, ktoré nevyžadujú rekonštrukciu matice, by boli ideálne, ale tiež som zvedavý, ako sa ostatní okolo tohto problému dostali.
odpovede:
2 pre odpoveď č. 1Ďakujem všetkým za dobrú radu.
Rozhodol som sa držať sa Pythonu. Robím väčšinu prenosov údajov medzi spoločnosťami Matlab a Python pomocou textových súborov.