[python] 2d 목록을 2d numpy 배열로 변환하는 방법은 무엇입니까?

2D 목록이 있습니다.

a = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

2d numpy 배열로 변환하고 싶습니다. 메모리를 할당하지 않고 할 수 있습니까?

numpy.zeros((3,3))

그런 다음 값을 저장합니까?



답변

목록을 np.array다음으로 전달하십시오 .

a = np.array(a)

이 기회를 dtype통해 기본값이 원하는 것이 아닌 경우 설정할 수도 있습니다 .

a = np.array(a, dtype=...)


답변

python 파일로 내 보낸 대용량 데이터 세트를 형식으로 사용하고 있습니다.

XVals1 = [.........]
XVals2 = [.........]

각 목록의 길이는 동일합니다. 나는 사용한다

>>> a1 = np.array(SV.XVals1)

>>> a2 = np.array(SV.XVals2)

그때

>>> A = np.matrix([a1,a2])


답변

다음 코드를 사용하십시오.

c = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
matrix([[1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]])

그러면 그것은 당신에게 줄 것입니다

다음 코드를 사용하여 행렬의 모양과 치수를 확인할 수 있습니다.

c. 모양

c.ndim


답변

np.array()unutbu가 위에서 말한 것보다 훨씬 더 강력합니다. 또한이를 사용하여 np 배열 목록을 더 높은 차원 배열로 변환 할 수 있습니다. 다음은 간단한 예입니다.

aArray=np.array([1,1,1])

bArray=np.array([2,2,2])

aList=[aArray, bArray]

xArray=np.array(aList)

xArray의 모양은 (2,3)이며 표준 np 배열입니다. 이 작업은 루프 프로그래밍을 방지합니다.


답변