반응형

Python 377

파이썬 def 함수 선언 case 총정리 (argument, return)

def로 파이썬에서 함수를 선언하는 경우는 원하는 기능을 반복 사용하는 경우 등에서 매우 간결한 코딩을 도와주는 핵심적인 기능입니다. 이번 글에서는 def로 함수를 선언하는 케이스에 대해서 input과 output의 형태를 기준으로 삼아 간단한 예제들을 다루어보겠습니다. 파이썬 def 케이스 정리 1. input, output 둘다 없는 경우 먼저 가장 간단한 케이스인 input, output이 둘다 없는 경우입니다. def func_a(): print('안녕하세요.') # 안녕하세요. 3번 출력 a = func_a() # a에는 None 반환 func_a() func_a() print(a) # None 이 경우 함수 내의 print 문은 실행되지만, 반환 값이 없기에 다른 변수에 결과를 받으려하면 No..

[Numpy] np.where 사용법 : 조건 만족하는 위치 인덱스 찾기

파이썬 넘파이 np.where : 조건 만족 인덱스 반환 파이썬에서 넘파이를 사용하다보면, np.where 함수를 자주 만나게 됩니다. 만날때 마다 복잡해보이지만, 사실 알고보면 매우 간단한 np.where 함수의 사용 방법을 간단히 살펴보겠습니다. np.where 기본 사용법 (인덱스만 반환) 우선, 기본적으로 넘파이의 np.where 함수를 사용하는 방법은 np.where 내에 조건만 적는 방법입니다. numpy array를 1개 선언해본 뒤, np.where로 조건을 만족하는 위치의 인덱스를 가져오는 예시를 보여드리겠습니다. import numpy as np a = np.arange(5, 15) # array([ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]) np.where(a >..

Python/Numpy 2021.12.02

[Numpy] np.arange 사용법, range 함수와 차이

파이썬 넘파이 np.arange 함수 사용법 for 문 순회 상황 등에서 range 함수처럼 특정 수열을 만들려고 할 때, np.arange 함수를 많이 사용하게 됩니다. np.arange 함수의 사용 방법은 사실 range 함수의 사용 방법과 동일합니다. np.arange(시작점(생략 시 0), 끝점(미포함), step size(생략 시 1)) 인자를 넣어주면 됩니다. 한번 간단히 예제를 살펴보도록 하겠습니다. import numpy as np np.arange(10) # array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) np.arange(1, 15, 2) # array([ 1, 3, 5, 7, 9, 11, 13]) np.arange(9, -2, -1.5) # array([ 9. , ..

Python/Numpy 2021.12.02

파이썬 for문 사용 반복문 예제

파이썬에서 for문을 이용하여 반복문을 작성하는 몇 가지 예제를 보여드리도록 하겠습니다. 파이썬 for문 기본형(range 이용) for문을 사용할 수 있는 가장 기본적인 방법인 range(숫자)를 이용해서 원하는 횟수만큼 코드를 반복 실행하는 예시를 먼저 보여드리겠습니다. cnt = 0 sum = 0 # range(10)은 0, 1, 2, ..., 9 의미 for i in range(10): cnt += 1 sum += i print(cnt) # 10 print(sum) # 0 + 1 + 2 + ... + 9 = 45 윗 코드에서는 i가 0부터 9까지 1씩 올라가면서 실행이 되게 됩니다. range(1, 10, 2) 처럼 작성하면 i가 1, 3, 5, 7, 9로 총 5번 실행이 되게 되고, np.ara..

파이썬 기초 자료형 2 : 튜플(tuple)

한 번 저장된 값을 변경하지 않고 싶을 때, 다른 자료형보다 안정적으로 사용 가능한 튜플 자료형에 대해서 살펴보도록 하겠습니다. 리스트 자료형과 순서대로 데이터를 저장한다는 원리는 거의 비슷하나, 저장된 자료의 값을 변경, 추가, 삭제 등이 불가능한 자료형이 튜플 자료형이라고 할 수 있습니다. 파이썬 튜플 자료형 예제 튜플 선언하기 먼저 튜플을 선언하는 예제를 살펴보도록 하겠습니다. 튜플 역시 리스트처럼 저장하는 데이터들의 자료 타입이 모두 일치할 필요는 없으며, 다양한 형태의 자료들을 저장 가능합니다. 또한, 튜플은 기본적으로는 소괄호 ( ) 표시로 감싸서 선언을 하게되는데, 이 소괄호 표시를 생략하고 선언도 가능합니다. tuple_a = (1) # (1, ) 처럼 선언도 가능 tuple_b = (1,..

파이썬 기초 자료형 : 딕셔너리(dict)

파이썬에서 사용하는 기초 자료형인 딕셔너리를 사용하는 방법에 대해 간단히 다루어보겠습니다. 딕셔너리 자료형에서는 다른 프로그래밍 언어의 해쉬맵, 해쉬테이블 자료형을 대신하는 역할을 하는데요, 데이터를 key : value pair 형태 로 저장하여 key 값이 주어지면 이에 매칭되는 value를 반환하는 역할을 하는 자료형입니다. 딕셔너리(dict 자료형) 선언 value에는 문자열, 정수, 실수, 리스트, 튜플, 데이터프레임 등 다양한 자료형이 거의 제한없이 들어갈 수 있으나, key에는 리스트 등 자료형은 들어갈 수 없습니다.(튜플은 가능합니다.) key : value 형태로 : 로 구분하여 pair를 지정하고, 쉼표( , )로 pair를 구분해주시면 됩니다. # 가능한 원소 예시 dict_1 = {..

[Numpy] 파이썬 넘파이 np.linspace 함수(구간 내에 숫자 채우기)

파이썬에서 넘파이 라이브러리를 사용하다보면 예를 들어, y = sin x 같은 그래프를 그리고 싶을 때에 x를 어떻게 지정해야하는지 궁금해지는 경우가 있습니다. 이런 경우 구간 내에 숫자를 균일한 간격으로 촘촘하게 채울 수 있는 np.linspace 함수에 대해서 간단한 설명을 해보도록 하겠습니다. 파이썬 np.linspace 함수 사용법 np.linspace 함수의 사용법은 간단합니다. 인자를 3개를 기본으로 넣어주면 되는데, 구간 시작점, 구간 끝점, 구간 내 숫자 개수 3가지를 순서대로 채워주시면 됩니다. 예를 들어 1과 2 사이를 숫자 100개(끝점 포함)로 채운 예시를 보도록 하겠습니다. 1과 2 사이에서 균일한 간격으로 숫자가 촘촘하게 채워진 것을 확인하실 수 있지요? 여기서 끝점을 포함하지 ..

Python/Numpy 2021.11.30

[Matplotlib] 파이썬 다중 막대 그래프 그리기 예제

이번 글에서는 파이썬에서 다중 막대 그래프를 겹치지 않게 그리는 예제 코드를 살펴보도록 하겠습니다. 파이썬 plt 다중 막대 그래프 예제 코드 먼저, 다음과 같은 간단한 연도별 상점별 판매 액수 데이터프레임이 있다고 가정해보겠습니다. import pandas as pd a = [135, 117, 91, 86] b = [112, 133, 151, 162] c = [96, 108, 99, 104] year = ['2018', '2019', '2020', '2021'] df = pd.DataFrame({'shop A' : a, 'shop B' : b, 'shop C' : c}, index = year) df 이제 각 상점을 나타내는 3개의 열을 대상으로 차례대로 막대 그래프를 그려보도록 하겠습니다. 각 코드 ..

Python/Matplotlib 2021.11.30

[Sklearn] 파이썬 k-NN 알고리즘(k-최근접 이웃) 예제

지도 학습 알고리즘 중 하나인 k-NN 알고리즘의 파이썬 구현 예제에 대해서 살펴보겠습니다. k-최근접 이웃 알고리즘은 새로운 데이터에 대해서 가장 가까운 기존의 k개 데이터를 살펴 k개 데이터 중 가장 많은 비율을 차지하는 class로 분류하는 분류 알고리즘인데요. 예를 들어, 테스트 데이터에 새로운 사진 A가 들어왔다고 가정해봅시다. k = 9로 정했을 때, 새로운 사진 A에서 9개의 가장 가까운 사진 중 6개가 고양이, 3개가 강아지 라벨이었다면, A는 고양이 사진으로 분류하는 예제라고 볼 수 있겠지요. 파이썬 사이킷런 k-NN 알고리즘 전처리 k-NN 알고리즘을 구현하기 위해서 필요한 간단한 전처리 과정을 먼저 수행하도록 하겠습니다. 먼저, 데이터셋을 불러오고 학습 데이터 셋 및 테스트 데이터 셋..

Python/Sklearn 2021.11.29

[Matplotlib] seaborn 파이썬 히트맵 그리는 방법 예제

지난 포스팅에서는 숫자형 - 숫자형 자료 사이의 관계 혹은 숫자형 - 범주형 자료 사이의 관계를 살피기 좋은 버블 차트를 파이썬 matplotlib에서 그리는 방법을 살펴보았습니다. 이번에는 범주형 - 범주형 자료 사이의 관계를 요약하여 보기 좋은 히트맵을 그리는 방법에 대해서 간단히 다루어보도록 하겠습니다. 여기서도 지난 글과 마찬가지로 캐글의 자전거 대여 수요 학습 데이터 셋을 사용하되, 이번에는 시간대와 계절 두 가지 범주를 가지고 그룹화를 진행하여 각 범주의 평균 자전거 대여 수를 대상으로 히트맵을 그려보도록 하겠습니다. 파이썬 히트맵 시각화에 필요한 데이터 전처리 히트맵을 그리는 함수는 matplotlib을 기반으로 두면서 더 다채로운 시각화를 할 수 있는 seaborn 패키지 내의 heatma..

Python/Matplotlib 2021.11.28
반응형