파이썬 일련의 목록의 데카르트 곱을 얻습니까?
목록 그룹에서 카티 전 곱 (가능한 모든 값 조합)을 얻으려면 어떻게해야합니까? 입력: somelists = [ [1, 2, 3], ['a', 'b'], [4, 5] ] 원하는 출력 : [(1, 'a', 4), (1, 'a', 5), (1, 'b', 4), (1, 'b', 5), (2, 'a', 4), (2, 'a', 5) ...] 해결 방법 Python 2.6에서 사용 가능합니다. import itertools somelists = [ [1, 2, 3], ['a', 'b'], [4, 5] ] for element in itertools.product(*somelists): print(element) 그것은 다음과 같습니다. for element in itertools.product([1, 2, 3], ..
2020. 10. 7.
파이썬 두 개의 numpy 배열 짜기
다음 배열이 주어진다고 가정하십시오. a = array([1,3,5]) b = array([2,4,6]) 이렇게 세 번째 배열을 얻을 수 있도록 효율적으로 짜맞추는 방법 c = array([1,2,3,4,5,6]) length (a) == length (b) 라고 가정 할 수 있습니다. 해결 방법 나는 Josh의 대답을 좋아합니다. 좀 더 평범하고 평범하며 약간 더 장황한 솔루션을 추가하고 싶었습니다. 어느 것이 더 효율적인지 모르겠습니다. 비슷한 성능을 기대합니다. import numpy as np a = np.array([1,3,5]) b = np.array([2,4,6]) c = np.empty((a.size + b.size,), dtype=a.dtype) c[0::2] = a c[1::2] = b..
2020. 10. 7.
파이썬 Numpy, multiply array with scalar
a_1 = np.array([1.0, 2.0, 3.0]) a_2 = np.array([[1., 2.], [3., 4.]]) b = 2.0 예상 결과: a_1 * b = array([2.0, 4.0, 6.0]); a_2 * b = array([[2., 4.], [6., 8.]]) 문제와 관련된 경우 Python 2.7을 사용하고 있습니다. 해결 방법 numpy 배열에 스칼라를 곱하면 작동합니다. >>> import numpy as np >>> np.array([1, 2, 3]) * 2 array([2, 4, 6]) >>> np.array([[1, 2, 3], [4, 5, 6]]) * 2 array([[ 2, 4, 6], [ 8, 10, 12]]) 이것은 또한 매우 빠르고 효율적인 작업입니다. 귀하의 예 :..
2020. 10. 7.