2013-04-06 2 views

답변

7

view 메서드를 사용할 수 있습니다. 다음은 그 예 (5 세)에 대한 데모 형상으로 배열하여, 같습니다

In [21]: x 
Out[21]: 
array([[ 0., 1., 2., 3., 4.], 
     [ 5., 6., 7., 8., 9.], 
     [ 10., 11., 12., 13., 14.]]) 

In [22]: y = x.ravel().view(dtype=[('idx1', float), ('idx2', float), ('data', float, 3)]) 

In [23]: y['idx1'] 
Out[23]: array([ 0., 5., 10.]) 

In [24]: y['data'] 
Out[24]: 
array([[ 2., 3., 4.], 
     [ 7., 8., 9.], 
     [ 12., 13., 14.]]) 

In [25]: y['data'][1] 
Out[25]: array([ 7., 8., 9.]) 

참고 y 즉 1-D 어레이이고; 모양 (3,)이 있습니다. 전환 수를 y = x.view(...) (예 : x)으로 변경하면 y은 (3,1)이되고 y['idx1']은 모양 (3,1)이됩니다.

+0

니스, 여분의 길이 - 1 축을 피하기 위해'ravel '사용에 대해 몰랐습니다. – askewchan

관련 문제