2014-09-01 2 views
-2

병렬 처리 작업을하고 있습니다. 중간에 배열이 있습니다.Numpy 배열의 요소 색인 1

POS는 ndarray이며, 그 값은 내가 계산 예를 2367,2301,2304에 대한 POS ndarray의 두번째 위치를 고려할

pos : 

ndarray[[ 0. 44. 2367.] 
     [ 0. 73. 2301.] 
     [ 0. 38. 2304.] 
     [ 0. 35. 2349.] 
     [ 0.  6.  0.] 
     [ 0. 43. 2319.] 
     [ 0. 95. 2381.] 
     [ 0. 189.  3.] 
     [ 0.  0. 2339.] 
     [ 0. 22. 2335.] 
     [ 0. 44. 2345.] 
     [ 0. 44. 2345.] 
     [ 0. 52. 2348.] 
     [ 0. 50. 2348.]] 

dtype :float64 

max : 2381.0 
min :0.0 

Shape = {tuple}(14, 3) 

size :42 

입니다 : 나는 예를 들어 NumPy와 배열 의 인덱스를 확인합니다. ..기타. 어떻게 색인을 생성 할 수 있으며 어떻게 2 순위 값만 정렬 할 수 있습니까? 배열의 두 번째 위치가 3,4,2,1이면 두 번째 위치가 1,2,3,4 인 경우를 의미합니다. 제안 사항 ..

+0

numpy 기본 설명서 ... f입니다. irst 페이지 ... – Gioelelm

답변

1

열을 참조하려면 배열의 (가장 오른쪽 열 예) 인덱스 2, 당신은 당신이 (자리에) 두 번째 열을 기준으로 볼때 배열을 정렬하려면

pos[:,2]

, 당신이 할 수있는 수행 할 수 있습니다

pos[:,2].sort()

+0

답장을 보내 주셔서 감사합니다. 그러나 print (pos [:, 2] .sort())를 사용하면 None을 나타냅니다. – dbr

+1

'pos [:, 2] .sort()'와 조심하십시오. 그것은 단지 * 단 하나의 열을 제자리에 정렬하고 다른 열은 그대로 둡니다. 그것은 전체 배열'pos'를 정렬하지 않습니다. –

+0

그리고 pos [i] [:, 2] <0 ~ 25; pos [i] [:, 2] <25 ~ 50 그리고 pos 배열의 두 번째 위치 만 세는 루프를 위해 12를 만들고 싶습니다. 그리고 나서 그것을 독립적으로 만들고이 루프를 병렬로 실행하고 싶습니다. 그래서 내게 제안을해라 – dbr