0
파이썬에서 2 차원 배열의 특정 '영역'을 선택하는 방법이 있습니까? 배열 슬라이스를 사용하여 하나의 행이나 열만을 투사 할 수 있지만 큰 2 차원 배열에서 '하위 배열'을 선택하는 방법은 확실하지 않습니다. 사전에 감사 잭파이썬의 2D 배열에서 '영역'을 선택하십시오.
파이썬에서 2 차원 배열의 특정 '영역'을 선택하는 방법이 있습니까? 배열 슬라이스를 사용하여 하나의 행이나 열만을 투사 할 수 있지만 큰 2 차원 배열에서 '하위 배열'을 선택하는 방법은 확실하지 않습니다. 사전에 감사 잭파이썬의 2D 배열에서 '영역'을 선택하십시오.
당신이 numpy
라이브러리를 사용하는 경우, 당신과 같이이를 위해 numpy
년대에게 고급 슬라이스를 사용할 수 있습니다
import numpy as np
x = np.array([[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]])
print x[0:2, 2:4]
# ^^^ ^^^
# rows cols
# Result:
[[3 4]
[7 8]]
합니다 (numpy
docs에 대한 추가 정보를 원하시면)
numpy
을 사용하지 않으려면 다음과 같이 목록 이해를 사용할 수 있습니다.
x = [[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]]
print [row[2:4] for row in x[0:2]]
# ^^^ ^^^ select only rows of index 0 or 1
# ^^^ and only columns of index 2 or 3
# Result:
[[3, 4],
[7, 8]]
'array [row1 : row2, col1 : col2]'와 같은 것을 의미합니까? – darthbith