본문 바로가기

Python/Pandas & numpy47

Numpy dot/transpose □ .dot() : 행렬의 곱 A=np.array([[1,2,3],[4,5,6]]) B=np.array([[7,8],[9,10],[10,11]]) dot_pd = np.dot(A,B) print(A) print("\n") print(B) print("\n") print(dot_pd) □ .transpose() : 주어진 행렬의 행과 열을 바꾸는 것 A=np.array([[1,2,3],[4,5,6]]) B=np.array([[7,8],[9,10],[10,11]]) print(A) print("\n") transpose_A = np.transpose(A) print(transpose_A) print("\n") print(B) print("\n") transpose_B = np.transpose(B) prin.. 2024. 3. 14.
Numpy sort/argsort □ 기본적으로 오름차순 / 내림차순은 [::-1] □ np.sort(ndarray) : 인자로 들어온 행렬은 그대로 유지한 채 원 행렬의 정렬된 행렬 반환 □ ndarray.sort : 행렬 자체를 정렬한 형태로 변환하며 반환값은 None org_array = np.array([3,1,9,5]) print(org_array) print("\n") print("오름차순") sort_org_array = np.sort(org_array) print(sort_org_array) print("\n") print("내림차순") desc_sort_org_array = np.sort(org_array)[::-1] print(desc_sort_org_array) print("\n") org_array = np.arra.. 2024. 3. 14.
Numpy 배열 병합/분할 □ 병합 : np.append(배열1,배열2, axis=0or1) #배열간 병합 a = np.arange(1,13).reshape(3,4) b = np.arange(13,25).reshape(3,4) c = np.append(a,b,axis=0) d = np.append(a,b,axis=1) print(f"a 형태 :\n{a}") print("\n") print(f"b 형태 :\n{b}") print("\n") print(f"c 형태(행방향 병합) :\n{c}") print("\n") print(f"d 형태(열방향 병합) :\n{d}") print("\n") □ 병합 ○ vstack = axis 0 기준으로 병합 ○ hstack = axis 1 기준으로 병합 a = np.arange(1,33).resha.. 2024. 3. 10.
Numpy 인덱스 번호를 활용한 임의값 추가 및 삭제 □ np.insert(변수명, 인덱스번호, 추가 값) □ np.delete(변수명, 인덱스번호, 삭제 값) #1차원 배열생성 a = np.array([1,2,3,4,5]) #특정 인덱스번호에 임의 값 넣기 b = np.insert(a,2,100) print(f"a 형태 :\n{a}") print("\n") print(f"b 형태 :\n{b}") #2차원 배열생성 c = np.arange(1,16).reshape(3,5) #특정 인덱스번호에 임의 값 넣기 : 행방향, 열방향 d = np.insert(c,1,100, axis = 0) e = np.insert(c,1,100, axis = 1) #특정 인덱스번호에 임의 값 삭제 : 행방향, 열방향 f = np.delete(c,2, axis = 0) g = np.. 2024. 3. 10.
Numpy 전치행렬 전치 행렬은 행과 열을 교환하여 얻는 행렬이다. 즉, 주대각선을 축으로 하는 반사 대칭을 가하여 얻는 행렬 #전치행렬 Transpose Matrix arr = np.array([[1,2],[3,4]]) print(f"arr : \n{arr}") print("\n") print(f"arr 전치행렬: \n{arr.T}") print("\n") print("\n") arr1 = np.array([[1,2,3],[4,5,6],[7,8,9]]) print(f"arr1 : \n{arr1}") print("\n") print(f"arr1 전치행렬: \n{arr1.T}") print("\n") print("\n") arr3 = np.array([[1,2],[3,4],[5,6]]) print(f"arr3 : \n{arr.. 2024. 3. 9.
Numpy 차원축소 □ 차원추가 : .expand_dims(변수명, axis = 0 or 1) □ 차원축소 : .squeeze(변수명, axis = 0 or 1) #1차원 arr=np.array([1,2]) print(f"arr :\n{arr}") print(f"arr 차원 :\n{arr.ndim}") print("\n") #차원 추가 arr1=np.expand_dims(arr,axis=1) print(f"arr 차원추가 행방향 :\n{arr1}") print("\n") arr2=np.expand_dims(arr,axis=0) print(f"arr 차원추가 열방향 :\n{arr2}") print("\n") print(f"arr1 :\n{arr1}") print("\n") print(f"arr2 :\n{arr2}") prin.. 2024. 3. 9.
Numpy 배열연산4 □ 브로드캐스팅 #브로드케스팅 arr1 = np.array([[0,0,0],[1,1,1],[2,2,2]]) arr2 = np.array([[5,6,7]]) print(f"arr1 :\n{arr1}") print("\n") print(f"arr2 :\n{arr2}") print("\n") print(f"arr1 + arr2 :\n{arr1+arr2}") print("\n") arr3 = np.array([[1,1,1]]) arr4 = np.array([[0],[1],[2]]) print(f"arr3 :\n{arr3}") print("\n") print(f"arr3 :\n{arr4}") print("\n") print(f"arr3 + arr4 :\n{arr3+arr4}") 2024. 3. 9.
Numpy 배열연산3 #비교연산 arr1 = np.array([[1,2,3],[4,5,6]]) arr2 = np.array([[1,0,3],[4,-2,9]]) print(f"arr1 :\n{arr1}") print("\n") print(f"arr2 :\n{arr2}") print("\n") print(f"np.array_equal :\n{np.array_equal(arr1,arr2)}") print("\n") print(f"arr1 == arr2 :\n{arr1 == arr2}") print("\n") print(f"arr1 > arr2 :\n{arr1 > arr2}") print("\n") print(f"arr1 < arr2 :\n{arr1 < arr2}") #삼각함수 tri_array = np.array([[1,2,3],.. 2024. 3. 9.
Numpy 배열연산2 □ .min 최소값 / .max 열방향 / .mean 평균 / .std 표준편차 / .cumsum : 누적합 / .median 중간값 arr = np.array([[1,2,3],[0,1,4]]) print(f"arr : \n{arr}") print("\n") print(f"arr sum :\n{np.sum(arr)}") print("\n") print(f"arr min :\n{np.min(arr)}") print(f"arr max :\n{np.max(arr)}") print(f"arr max 열방향 :\n{arr.max(axis=1)}") print(f"arr mean 평균 :\n{np.mean(arr)}") print(f"arr mean 행방향 :\n{arr.mean(axis=1)}") print(f".. 2024. 3. 9.