행렬이 X
이고 목록이 centres
입니다. 새로운 numpy 행렬 td_X
을 만들고 싶습니다.목록을 numpy 행렬로 변환
td_X
으로 채우려는 인덱스는 X
의 행으로 구성되어 있으며 인덱스는 센터와 같습니다. 의사 코드 :
for each in centers:
td_X.append(X[eacj])
어떻게 이것을 파이썬을 사용하여 할 수 있습니까?
행렬이 X
이고 목록이 centres
입니다. 새로운 numpy 행렬 td_X
을 만들고 싶습니다.목록을 numpy 행렬로 변환
td_X
으로 채우려는 인덱스는 X
의 행으로 구성되어 있으며 인덱스는 센터와 같습니다. 의사 코드 :
for each in centers:
td_X.append(X[eacj])
어떻게 이것을 파이썬을 사용하여 할 수 있습니까?
그냥 모양을 변경하거나 짜 : 여기
x = np.array([l[0] for l in x])
x = np.array(alist)
x = np.squeeze(x) # or
x = x.reshape(45, 5785) # or
x = x[:,0,:]
목록에서 추가로 중첩 된 레이어를 제거 할 수 있지만 이러한 종류의 재구성은 배열을 사용하면 훨씬 쉽습니다.
x[0]
에서 추가 레벨의 목록이 있습니다. 그 중간 크기의 크기가 1이기 때문에,
x = [[[1,2]], [[2,3]], [[4,5]]]
np.array(x).shape
# (3, 1, 2)
np.array([l[0] for l in x]).shape
# (3, 2)
np.array([l[0] for l in x])
# array([[1, 2],
# [2, 3],
# [4, 5]])
이것은 여전히 차원이있는 배열을 생성합니다 :'(45, 1, 5785)' – user7347576
결과를'x'에 다시 할당 했습니까? – Psidom
다른 변수에는 없습니다. – user7347576
전혀 시도 했습니까 ??? 심지어'np.array (x)'??? –