'데이터 분석/[Python] 기초' 카테고리의 글 목록 (3 Page)
728x90

데이터 분석/[Python] 기초 38

[Python] astype 컬럼타입 변경시 결측 에러 무시

위 데이터처럼 일부 결측이 있을 경우 숫자형 타입을 바꿀 때 다음과 같이 에러가 납니다. df['실거래_거래금액(만원)'] = df['실거래_거래금액(만원)'].astype(int) ValueError: invalid literal for int() with base 10: 'nan' 아래와 같이 해결할 수 있습니다! df['실거래_거래금액(만원)'] = df['실거래_거래금액(만원)'].apply(pd.to_numeric, errors='coerce')

[Python] groupby 컬럼명

df_g = df.groupby('등록공장ID')['표제부PK'].count() #등록공장ID별 표제부PK의 개수 print(df_g) 등록공장ID가 index로 잡혀있고, 표제부PK 컬럼에 count 개수가 있습니다. 이때, reset_index( )를 해주면 index가 빠져나오게 되겠죠 df_g = df.groupby('등록공장ID')['표제부PK'].count().reset_index() print(df_g) count 값의 내용을 포함하는 표제부PK 컬럼 이름을 바꾸고싶다면 reset_index(name='컬럼명')을 해주면 됩니다. df_g = df.groupby('등록공장ID')['표제부PK'].count().reset_index(name='표제부PK개수') print(df_g)

[Python] Pandas 옵션- 행/열 더 많이 보기

pd.set_option('display.max_columns', 500) # 열(컬럼) 모두 보기 pd.set_option('display.max_rows', 500) # 행 모두 보기 데이터프레임을 print하여 콘솔에서 확인할 때, 행과 열이 일부만 보일 수 있습니다. pd.get_option('display.max_columns') # 0 컬럼이 많아서 중간 컬럼들은 생략됩니다 pd.set_option('display.max_columns', 500) 모든 컬럼을 확인할 수 있습니다. # option 초기화 pd.reset_option('display.max_columns')

[Python] 결측치 시각화 missingno

캐글의 타이타닉 train 데이터를 불러와서 구조를 살펴본 뒤, 시각화를 통해 결측값이 있는 컬럼을 알아보겠습니다. train = pd.read_csv('train.csv') train.info() 구조에서도 알 수 있듯이 전체 891행 중에 Age와 Cabin, Embarked에 결측치가 존재하는 것을 확인할 수 있습니다. 시각화로 표현해보겠습니다. import missingno as msno msno.matrix(train, figsize=(12,5) matrix 그래프 외에 bar chart나 heatmap 등으로도 표현이 가능합니다~

[Python] np.where 조건에 맞는 값 변경

np.where(조건, True일 때의 값, False일 때의 값) import numpy as np import pandas as pd df = pd.read_csv("인천_행정구역현황.csv", encoding="949") # 인천광역시 남구는 과거 2018년에 미추홀구로 명칭이 변경되어 해당 내용을 바꾸려고 합니다. df['주소'] = np.where(df['주소'] == "인천광역시 남구", "인천광역시 미추홀구", df['주소']) # df['주소']가 '인천광역시 남구'에 해당(True)하면, "인천광역시 미추홀구"로 바꾸고 # 해당하지 않으면(False) 그대로 df['주소'] 의 내용을 남긴다.