문제

스파 스 매트릭스 A와 컬럼 벡터 A,

In[1]: A
Out[1]: <256x256 sparse matrix of type '<type 'numpy.float64'>'
with 512 stored elements (blocksize = 2x2) in Block Sparse Row format>

In[2]: len(a)
Out[2]: 70
.

나는 서브 트레싱을 쓸 것입니다.내가 쓴 코드는 다음과 같습니다.

Sub = A.tolil()[a,:][:,a]
.

문제를 해결하는 데 필요한 시간은 꽤 오래되었습니다.나는 프로세스를 더 빠르게하기 위해 코드를 수정할 수 있는지 알고 싶습니다.

도움이 되었습니까?

해결책

CSR 행렬은 빠른 행 슬라이싱을 갖는다;CSC 매트릭스는 빠른 열 슬라이스를 가지고 있습니다.대부분의 스파 스 유형 간의 변환은 잘 최적화되어 있으므로 수행 할 슬라이스의 종류에 적합한 유형을 사용하려고하는 것이 좋습니다.

sub= a.tocsr () [a, :]. tocsc () [:, a]

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top