2017-02-02 4 views
2

2D numpy 배열을 만들고 순차적 정수로 채우고 싶다고합시다. 사용할 수있는 옵션은 무엇입니까?Numpy : 순차적 정수로 2D numpy 배열 채우기

예 : 물론이 경우 내가 상위 경계를 결정하기 위해 range(15)를 사용할 수 있지만 방법 5 값 이후에 새 행을 만들 numpy을 알려에서

import numpy 
a=numpy.array([[0,1,2,3,4],[5,6,7,8,9],[10,11,12,13,14]]) 

? 실제 문제는 466 열과 365 행의 2D 배열을 중심으로 회전하므로 일반적인 해결책을 찾고 있습니다.

+3

(15) .reshape (3,5)'당신의 간단한 예를 들어, 일반적인 경우에 대한'A = np.arange (466 * 365) .reshape (466,365)'작동해야합니다. – EdChum

답변

5

정상적인 np.arange 호출에서 .reshape을 사용하면 데이터를 변경하지 않고 간단히 배열을 바꿀 수 있습니다.

In[101]: np.arange(15).reshape(3, 5) 
Out[101]: 
array([[ 0, 1, 2, 3, 4], 
     [ 5, 6, 7, 8, 9], 
     [10, 11, 12, 13, 14]]) 

In[102]: np.arange(466*365).reshape(466, 365) 
Out[102]: 
array([[  0,  1,  2, ..., 362, 363, 364], 
     [ 365, 366, 367, ..., 727, 728, 729], 
     [ 730, 731, 732, ..., 1092, 1093, 1094], 
     ..., 
     [168995, 168996, 168997, ..., 169357, 169358, 169359], 
     [169360, 169361, 169362, ..., 169722, 169723, 169724], 
     [169725, 169726, 169727, ..., 170087, 170088, 170089]]) 
당신은`A = np.arange을 할 수