반응형

분류 전체보기 501

파이썬 return 값 여러개 설정하기, 재귀 함수 응용 예시

파이썬 return 반환 값 여러개 설정 + 재귀 함수 안녕하세요. 이번 시간에는 파이썬 함수에서 return 값을 여러개 설정하는 방법과 return의 성질을 이용한 재귀 함수의 예시를 살펴보겠습니다. 파이썬 return 여러개 예시(feat. 튜플) 예를 들어, 두 수를 input으로 받고, 해당 숫자들의 합과 곱을 동시에 반환 받는 경우의 예시를 살펴보겠습니다. def sum_and_mul(a, b): return a + b, a * b # 쉼표로 반환 값 구분 hap, gop = sum_and_mul(3, 5) print(hap) # 8 print(gop) # 15 위와 같이 쉼표(,)를 기준으로 반환 값 사이를 구분해주시면 간단하게 해결됩니다. 두 반환 값을 각각 hap, gop 이라는 변수에 ..

[Numpy] 벡터 norm 구하기, 벡터 정규화 함수 : np.linalg.norm(), LA.norm() 사용법

파이썬 넘파이 벡터 norm, 정규화 함수 : np.linalg.norm() 안녕하세요. 이번 포스팅에서는 파이썬 넘파이 라이브러리에서 벡터의 norm을 구하거나 벡터를 정규화할 때 유용하게 사용 가능한 np.linalg.norm() 혹은 LA.norm() 함수의 사용법에 대해서 살펴보도록 하겠습니다. 먼저 가장 기본적인 사용법은 아래와 같습니다. default로는 2-norm(혹은 frobenius norm)을 기준으로 구하게 됩니다. numpy 라이브러리 혹은 numpy 라이브러리 내 linalg 라이브러리를 import하는 형태에 따라, np.linalg.norm 혹은 LA.norm 형태로 사용 가능합니다. # 가능한 import 형태 import numpy as np import numpy.lin..

Python/Numpy 2022.01.02

[Matplotlib] 파이썬 그래프 여러개 다중 플롯(subplot) 초간단 설정 방법

파이썬 plt 그림 여러개 간단하게 설정하기 : plt.subplots() 안녕하세요. 이번 포스팅에서는 파이썬 matplotlib 라이브러리에서 그래프 여러개를 한 화면에 동시에 나타내고, 각 그래프의 세부 사항들을 손쉽게 설정할 수 있는 간단한 방법을 살펴보겠습니다. 다중 플롯 격자 생성, figure 크기 및 여백 정하기 우선, 가장 먼저 subplot 여러개를 그리기 위한 격자를 생성해보겠습니다. 예를들어, 세로 3개, 가로 4개 사이즈의 격자를 만들고 싶다면 아래와 같이 코드를 작성해주시면 됩니다. plt.subplots() 함수 내에 y, x 방향으로 몇 개의 격자를 만들 것인지를 지정하면 다양한 형태의 격자를 만들 수 있습니다. f, axes로 각각 figure 전체를 컨트롤하는 변수와 그래..

Python/Matplotlib 2021.12.31

파이썬 클래스 상속(오버로딩), super().__init__() 의미

파이썬 클래스 상속과 super() 안녕하세요. 이번 시간에는 파이썬에서 클래스를 다룰 때, 상속을 진행하는 경우의 원리와 예제, 그리고 super().__init__() 함수가 의미하는 바가 무엇인지에 대하여 살펴는 시간을 가져보겠습니다. 가장 많이 다루는 클래스 상속 예제인 Person과 Student의 관계를 가지고 이 글에서도 설명해보도록 하겠습니다. 우선, 다음과 같은 간단하게 구현된 Person 클래스가 있다고 가정하겠습니다. class Person: def __init__(self, name, age): self.name = name self.age = age def get_name(self): print(f'제 이름은 {self.name}입니다.') def get_age(self): pri..

[Pandas] 파이썬 데이터프레임 병합/합치기 함수 비교(merge, concat)

파이썬 판다스 데이터프레임 합치기 함수 : pd.merge vs pd.concat 안녕하세요. 이번 시간에는 판다스에서 데이터프레임을 병합할 수 있는 두 함수인 pd.merge와 pd.concat 함수의 용도와 결과 차이에 대해서 간단히 비교해보는 시간을 가져보도록 하겠습니다. 먼저, 아래와 같이 간단한 데이터프레임 두 개가 각각 df_1, df_2 변수에 저장된 상태라고 가정해보겠습니다. 위 데이터프레임 두 개를 병합하는 여러 예시를 통해서 합쳐지는 형태와 원리를 이해해보겠습니다. merge 함수 : 내부 조인 (inner join) 가장 기본적인 예시로, 공통된 키의 값이 있는 경우에만 데이터프레임을 병합하는 내부 조인의 예시를 살펴보겠습니다. 예를 들어, 이름을 기준으로 df_1, df_2를 내부 ..

Python/Pandas 2021.12.30

[Numpy] 파이썬 배열 하한, 상한값 채우기 함수 : np.clip()

파이썬 넘파이 값 자르기 함수 : np.clip() 안녕하세요. 이번 시간에는 배열에서 값들을 하한~상한 값의 범위로 값을 자르는 함수인 np.clip 함수의 사용법에 관해서 살펴보겠습니다. 이 함수는 특히 비전 태스크에서 많이 사용되는데요. 어려워보이지만 케이스를 나누면 매우 간단하게 이해되는 대표적인 사용 예시들을 살펴보겠습니다. 일단 기본적인 np.clip 함수의 사용법은 np.clip(array, 하한값, 상한값) 으로 3개의 input이 들어갑니다. 함수의 원리는 하한값 이하의 값들은 하한값으로 모두 바뀌게 되고, 상한값 이상의 값들은 상한값으로 모두 바뀌는 것으로 이해해주시면 쉽습니다. np.clip 함수 기본 예시 (하한값, 상한값 둘다 있는 경우) 함수의 이해를 돕기 위하여 가장 기본적인 ..

Python/Numpy 2021.12.29

[Pandas] 파이썬 판다스 행, 열에 함수 적용 : pd.transform()

파이썬 판다스 데이터프레임 함수 적용 : pd.transform() 안녕하세요. 지난 번에 다뤘던 apply 함수에 이어, 이번에는 판다스 데이터프레임의 각 행, 열에 함수를 적용할 수 있는 좀더 간단한 방법인 transform 함수의 예제를 살펴보도록 하겠습니다. 궁금하신 분들을 위하여 지난 번에 다룬 apply 함수 사용법에 대한 글의 링크는 아래에 첨부해두겠습니다. [Pandas] 파이썬 데이터프레임 열, 행에 함수 적용 - apply 함수 파이썬에서 판다스를 이용하여 데이터프레임 작업을 하다보면 특정 column이나 row에 원하는 작업을 시키고 싶은 경우가 많을 것입니다. 이번 포스팅에서는 간단하지만 알아두면 굉장히 요긴한 jimmy-ai.tistory.com 두 함수의 세부적인 용도나 결과 형..

Python/Pandas 2021.12.29

[Numpy] 파이썬 내적, 행렬곱 함수 np.dot() 사용법 총정리

파이썬 넘파이 내적 함수 : np.dot() 안녕하세요. 이번 시간에는 파이썬 넘파이 라이브러리에서 제공하는 벡터 내적, 행렬곱 함수인 np.dot 함수의 사용법을 array의 차원에 따라서 총정리해보는 시간을 가져보겠습니다. 설명은 공식 document 글을 기반으로 하여 작성하였습니다. 기본적으로 np.dot 함수는 2개의 input 만을 받습니다. 3개 이상의 array에 대한 곱은 np.dot 함수 1회로는 수행할 수 없고, 여러번 함수를 겹쳐서 실행해야만 합니다. 따라서, 여기서는 2개의 input array의 차원에 따라 연산 수행이 어떤 패턴으로 달라지는지를 위주로 글을 작성해보겠습니다. 벡터 내적 : 1차원 x 1차원 가장 기본적인 경우로, 두 개의 input array가 모두 1차원 벡터..

Python/Numpy 2021.12.28

[Matplotlib] 파이썬 히스토그램 그리기 함수 사용법 : plt.hist()

파이썬 plt 히스토그램 함수 : plt.hist() 안녕하세요. 이번 글에서는 파이썬 시각화 라이브러리 matplotlib에서 데이터의 분포를 살필 수 있는 히스토그램 함수인 plt.hist()의 사용 방법을 자세하게 살펴보도록 하겠습니다. 우선, 다음과 같이 10000개의 정규분포 데이터를 샘플링하겠습니다. import numpy as np data = np.random.randn(10000) 이제, 위에서 샘플링한 변수인 data를 가지고 히스토그램을 그려보도록 하겠습니다. 우선, 가장 기본형의 히스토그램은 다음 코드처럼 그릴 수 있겠습니다. import matplotlib.pyplot as plt plt.hist(data) plt.show() 하지만, 아직 히스토그램을 완성시키기에는 너무 밋밋해보..

Python/Matplotlib 2021.12.28

아스키(ASCII) 코드 표, 문자열 대소비교 원리

아스키코드 표 C언어 char 문자형 등에서 사용되는 아스키코드 표의 0 ~ 127번까지 해당되는 문자는 아래 표처럼 정리할 수 있습니다. 이중 높은 빈도로 사용되는 문자들은 색깔로 표시해두었는데요. 크게 순서를 정리하면 제어문자 < 숫자 < 영어대문자 < 영어소문자 순서로 위치하고 있는 것을 확인하실 수 있습니다. 이 외에 다른 문자들은 군데군데 사이에 껴있기는 하지만, 비교에서 높은 빈도로 사용되지는 않기에 유의미하게 기억해두실 필요는 없습니다. 0~32번까지는 제어문자라고 특수 기능을 하는 문자들이 매칭되어 있습니다. 물론, 이 문자들에서도 특수 문자를 따로 매칭해주어 출력이 가능하게 해주는 경우도 있다는 점을 참고해주세요. 문자열의 끝을 의미하는 NULL문자는 0번, 공백은 32번에 위치하고 있음..

반응형