반응형
난수를 가진 간단한 1 차원 파이썬 배열이 있습니다. 내가 원하는 것은 특정 모양의 numpy 매트릭스로 변환하는 것입니다. 내 현재 시도는 다음과 같습니다.
randomWeights = []
for i in range(80):
randomWeights.append(random.uniform(-1, 1))
W = np.mat(randomWeights)
W.reshape(8,10)
불행히도 항상 다음과 같은 형식의 행렬을 만듭니다.
[[랜덤 1, 랜덤 2, 랜덤 3, ...]]
따라서 한 차원의 첫 번째 요소 만 사용되며 모양 변경 명령은 효과가 없습니다. 첫 번째 x 항목이 행렬의 행 1이되고 다음 x 항목이 행 2가되도록 1D 배열을 행렬로 변환하는 방법이 있습니까?
기본적으로 이것은 의도 된 모양입니다.
[[1, 2, 3, 4, 5, 6, 7, 8],
[9, 10, 11, ... , 16],
[..., 800]]
입력 배열을 구문 분석하여 원하는 형식으로 항상 새 행렬을 수동으로 만들 수 있다고 가정합니다. 그러나 내가 보지 못하는 내장 기능을 가진 더 간단하고 더 eleganz 솔루션이 있는지 알고 싶습니다. 이러한 행렬을 수동으로 작성해야하는 경우 모든 소스 데이터가 단순한 1D 배열로 제공되지만 행렬로 계산되기 때문에 코드의 다른 영역에서 많은 추가 작업이 필요합니다.
해결 방법
reshape ()
는 제자리에서 모양이 변경되지 않으므로 결과를 할당해야합니다.
>>> W = W.reshape(8,10)
>>> W.shape
(8,10)
참조 페이지 https://stackoverflow.com/questions/16235564
반응형
'파이썬' 카테고리의 다른 글
파이썬 Python 디버깅 팁 (0) | 2021.01.18 |
---|---|
파이썬 문자열에서 쉼표를 제거하는 방법 (0) | 2021.01.18 |
파이썬 열에 팬더 함수를 적용하여 여러 개의 새 열을 만드시겠습니까? (0) | 2021.01.18 |
파이썬 Ubuntu 12.10에서 Python Pip의 시스템 버전을 망쳤습니다. (0) | 2021.01.18 |
파이썬 : __getattr __ ()을 구현하는 방법? (0) | 2021.01.18 |
댓글