반응형

판다스 37

[Pandas] 파이썬 데이터프레임 행/열 순서(위치) 변경 방법 정리

Python 판다스 행, 열 순서 바꾸기 예제 파이썬 판다스 모듈에서 데이터프레임 내 행 및 열의 위치를 원하는대로 변경하는 방법들을 정리해보도록 하겠습니다. 용이한 이해를 위하여 아래와 같은 데이터프레임 df를 예시로 들어 설명드려 보겠습니다. import pandas as pd a = {'A' : ['0', '1', '2', '3', '4'], 'B' : ['00', '11', '22', '33', '44'], 'C' : ['000', '111', '222', '333', '444'], 'D' : ['0000', '1111', '2222', '3333', '4444']} df = pd.DataFrame(a) df 데이터프레임 행 위치 바꾸기 1. reindex 함수를 사용하는 방법 df.reindex..

Python/Pandas 2022.07.10

[Pandas] 파이썬 데이터프레임 행/열 밀기(옮기기) 방법 정리 : df.shift()

Python 판다스 행, 열의 값 밀어내기 : shift 함수 사용법 파이썬의 판다스 모듈에서 데이터프레임 내의 값들을 행 혹은 열을 기준으로 원하는 칸 만큼 밀어내는 shift 함수에 대하여 다루어보도록 하겠습니다. 여기서는 아래와 같은 데이터프레임 df를 예시로 설명을 진행하여 이해를 돕도록 하겠습니다. import pandas as pd a = {'A' : [1111, 2222, 3333, 4444, 5555], 'B' : ['AAAA', 'BBBB', 'CCCC','DDDD', 'EEEE']} df = pd.DataFrame(a) df 전체 n칸씩 아래(혹은 위)방향으로 밀기 : df.shift(n) 기본적인 shift 메소드의 사용법으로, df.shift(n) 형태로 실행 시에 모든 열의 행들이..

Python/Pandas 2022.06.21

[Pandas] 파이썬 데이터프레임에서 SQL 쿼리로 데이터 가져오기(feat. pandasql 모듈의 sqldf 함수)

Python 판다스 SQL 활용 데이터 추출 예제 파이썬의 데이터프레임에서 판다스의 확장 모듈인 pandasql의 sqldf 함수 기능을 통하여 SQL 쿼리로 원하는 데이터를 가져오는 예제를 다루어보겠습니다. 용이한 이해를 위하여 아래와 같은 간단한 데이터프레임 df를 가정해보겠습니다. import pandas as pd a = {'A' : [111, 222, 333, 444, 555, 666], 'B' : ['aaa', 'aaa', 'aaa', 'bbb', 'bbb', 'bbb']} df = pd.DataFrame(a) df 만일, pandasql 모듈이 설치되어 있지 않다면 아래 명령어로 설치를 진행해줍니다. !pip install pandasql 모듈 설치가 완료되었다면 SQL 명령어를 통한 데이터..

Python/Pandas 2022.06.19

Python Pandas에서 발생하는 KeyError: 0 해결법

파이썬 판다스 KeyError: 0 오류 디버깅 파이썬의 pandas 모듈에서 인덱싱 과정에서 발생하기 쉬운 KeyError 종류에 대하여 예상 원인과 이에 대한 해결법을 다루어보도록 하겠습니다. Case 1 : 열 이름 위치에 인덱스 번호를 대신 입력하는 경우 -> loc 함수 사용 아래와 같은 데이터프레임 df에 대하여 0번 인덱스 행을 가져오는 상황을 가정하겠습니다. 여기서 다음과 같이 인덱싱을 시도하면 KeyError: 0이 발생하게 됩니다. df[0] # KeyError: 0 발생 # 가능한 경우(열 이름만 가능) df['A'] df['B'] 이는 컬럼 이름이 들어가야할 자리에 인덱스 번호가 대신 들어간 상태이고, 0이라는 이름을 가진 열은 존재하지 않기에 해당 에러가 발생한 것입니다. 여기서는..

Python/Debugging 2022.06.14

[Pandas] 파이썬 데이터프레임 최대/최소값 위치 인덱스, 행 탐색 : idxmax(), idxmin()

파이썬 판다스 max/min 위치 index, row 찾기 파이썬의 데이터프레임 내에서 최대 혹은 최소값을 가지는 행의 위치에 대한 인덱스나 행 전체를 가져오는 방법에 대하여 idxmax, idxmin 함수의 사용법을 토대로 간단하게 정리해보겠습니다. 용이한 설명을 위하여, 아래와 같은 간단한 데이터프레임 df를 예시로 들어보겠습니다. import pandas as pd a = {"이름" : ['AAA', 'BBB', 'CCC', 'DDD'], "국어" : [80, 100, 90, 70], "수학" : [100, 90, 100, 80]} df = pd.DataFrame(a) df = df.set_index("이름") df 여기서는 참고로 "이름" 열이 인덱스로 지정되어 있습니다. 데이터프레임 전체 각 컬..

Python/Pandas 2022.06.12

[Pandas] 파이썬 데이터프레임 고유값 목록, 개수 확인 : unique, nunique 함수(열 1개, 여러 개)

Python 판다스 distinct : unique, nunique 사용법 예제 파이썬의 데이터프레임에서 각 컬럼에 등장하는 유일한 값들의 목록과 개수를 추출하는 방법을 판다스의 unique와 nunique 함수의 사용법을 중심으로 살펴보도록 하겠습니다. 여기서는 열 1개와 여러 개에 대한 예제를 모두 다루어보겠습니다. 이해를 돕기 위하여 아래와 같이 매우 간단한 데이터프레임 df를 가정해보도록 하겠습니다. import pandas as pd a = {'A' : [1, 1, 1, 2, 2, 2], 'B' : ['가', '가', '나', '나', '다', '다']} df = pd.DataFrame(a) df unique 함수 예제 1 : column 1개 내에서 고유값 목록 추출 열 1개 내에서 등장한 값..

Python/Pandas 2022.06.07

[Pandas] 파이썬 데이터프레임 특정 값, 조건 만족 행 개수 세기

파이썬 판다스 특정 값/조건 개수 조회 방법 정리 파이썬의 데이터프레임에서 판다스 모듈을 통해 특정 값의 개수나 조건을 만족하는 행의 개수를 세는 방법을 간략하게 정리해보도록 하겠습니다. 이해를 돕기 위하여 아래와 같은 간단한 데이터프레임 df를 예시로 가정해보겠습니다. import pandas as pd a = {"A" : [10, 10, 10, 100, 100, 100], "B" : ['aaa', 'aaa', 'bbb', 'bbb', 'ccc', 'ccc'], "C" : [10, 20, 30, 40, 50, 60]} df = pd.DataFrame(a) df 특정 값 개수 조회 방법 1 : len + loc (또는 loc + shape[0]) 이용 첫 번째로 특정 값을 카운팅하는 방법은 df.loc[..

Python/Pandas 2022.06.05

[Pandas] 파이썬 데이터프레임 원핫인코딩 함수 : get_dummies() 사용법

파이썬 판다스 one-hot encoding 함수 예제 파이썬 데이터프레임에서 범주형 column에 대하여 원핫인코딩을 손쉽게 진행하는 방법을 pandas의 get_dummies() 함수의 사용 예시를 통해서 다루어보도록 하겠습니다. 아래와 같이 숫자형 컬럼 2개와 범주형 컬럼 2개로 구성된 데이터프레임을 가정하겠습니다. import pandas as pd import numpy as np a = {'A' : [1, 2, 3, 4, 5, 6], 'B' : [10, 20, 30, 40, 50, 60], 'class' : ['가', '가', '나', '나', '다', '다'], 'level' : ['A', 'A', 'A', 'B', 'B', np.nan]} df = pd.DataFrame(a) df 기본 사..

Python/Pandas 2022.06.02

[Pandas] 파이썬 IQR 기반 이상치(outlier) 탐지 및 제거 방법

파이썬 판다스 이상값 찾기, 처리 예제 파이썬의 데이터프레임 내에서 각 열 내에서 이상치(outlier)를 찾아보고 이를 제거해보는 방법을 간단한 예제를 통하여 이해하기 쉽게 다루어보도록 하겠습니다. 여기서는 IQR을 기반으로 이상치를 탐지하는 예시를 다루었으며, 이상치의 기준은 아래와 같습니다. Q3 : 100개의 데이터로 가정 시, 25번째로 높은 값에 해당합니다. Q1 : 100개의 데이터로 가정 시, 75번째로 높은 값에 해당합니다. IQR : Q3 - Q1의 차이를 의미합니다. 이상치 : Q3 + 1.5 * IQR보다 높거나 Q1 - 1.5 * IQR보다 낮은 값을 의미합니다. 참고로, outlier의 경계 기준은 데이터의 분포와 사용하는 상황에 맞게 조절할 수 있습니다. 이해를 돕기 위하여 아..

Python/Pandas 2022.05.30

[Pandas] 데이터프레임에서 열/행/그룹별/전체 최댓값, 최솟값 구하기(df.max(), df.min())

파이썬 판다스 max, min 탐색 방법 예제 파이썬에서 판다스 모듈을 활용하여 최댓값과 최솟값을 찾는 방법들을 특정 컬럼, 특정 row, 그룹별, 그리고 데이터프레임 전체에 대하여 예시를 들면서 다루어보도록 하겠습니다. 이해를 돕기 위하여, 아래와 같이 학생들의 과목별 점수가 담긴 데이터프레임 df를 가정하고 최댓값, 최솟값을 구하는 예시를 살펴보겠습니다. import pandas as pd a = {'이름' : ['AAA', 'BBB', 'CCC', 'DDD', 'EEE', 'FFF'], '반' : ['A', 'A', 'A', 'B', 'B', 'B'], \ '국어' : [70, 95, 80, 60, 75, 90], '영어' : [80, 85, 75, 90, 65, 70], '수학' : [100, 8..

Python/Pandas 2022.05.23
반응형