/ / Matlab na Python sparse matrix konverziu, prekonanie problému s nulovým indexom - python, numpy, scipy, sparse-matrix

Matlab na konverziu Python sparse matrix, prekonanie problému s nulovým indexom - python, numpy, scipy, sparse-matrix

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.