반응형
파이썬의 numpy에서“zip ()”에 해당하는 것은 무엇입니까?
나는 다음을 시도하고 있지만 numpy 배열을 사용합니다.
x = [(0.1, 1.), (0.1, 2.), (0.1, 3.), (0.1, 4.), (0.1, 5.)]
normal_result = zip(*x)
결과는 다음과 같습니다.
normal_result = [(0.1, 0.1, 0.1, 0.1, 0.1), (1., 2., 3., 4., 5.)]
그러나 입력 벡터가 numpy 배열 인 경우 :
y = np.array(x)
numpy_result = zip(*y)
print type(numpy_result)
(예상) 다음을 반환합니다.
<type 'list'>
문제는이 후 결과를 numpy 배열로 다시 변환해야한다는 것입니다.
내가 알고 싶은 것은 이러한 전후 변환을 피할 효율적인 numpy 함수가 있다면 무엇입니까?
조옮김 만하면됩니다 ...
>>> a = np.array([(0.1, 1.), (0.1, 2.), (0.1, 3.), (0.1, 4.), (0.1, 5.)])
>>> a
array([[ 0.1, 1. ],
[ 0.1, 2. ],
[ 0.1, 3. ],
[ 0.1, 4. ],
[ 0.1, 5. ]])
>>> a.T
array([[ 0.1, 0.1, 0.1, 0.1, 0.1],
[ 1. , 2. , 3. , 4. , 5. ]])
dstack을 사용해보십시오 .
>>> from numpy import *
>>> a = array([[1,2],[3,4]]) # shapes of a and b can only differ in the 3rd dimension (if present)
>>> b = array([[5,6],[7,8]])
>>> dstack((a,b)) # stack arrays along a third axis (depth wise)
array([[[1, 5],
[2, 6]],
[[3, 7],
[4, 8]]])
따라서 귀하의 경우에는 다음과 같습니다.
x = [(0.1, 1.), (0.1, 2.), (0.1, 3.), (0.1, 4.), (0.1, 5.)]
y = np.array(x)
np.dstack(y)
>>> array([[[ 0.1, 0.1, 0.1, 0.1, 0.1],
[ 1. , 2. , 3. , 4. , 5. ]]])
참조 URL : https://stackoverflow.com/questions/12744778/what-is-the-equivalent-of-zip-in-pythons-numpy
반응형
'IT Share you' 카테고리의 다른 글
Joda-Time 사용에 대한 단점이 있습니까? (0) | 2020.12.15 |
---|---|
HTTP POST는 무한 할 수 있습니까? (0) | 2020.12.15 |
JS 코드가 "var a = document.querySelector ( 'a [data-a = 1]');"인 이유 (0) | 2020.12.15 |
Java 8 Clock으로 클래스 단위 테스트 (0) | 2020.12.15 |
Node / Express로 엔터프라이즈 앱 빌드 (0) | 2020.12.15 |