본문 바로가기

전체 글14

맨날 헷갈리는 정규표현식 (문자열에서 숫자만 추출) 모든 숫자들을 1개의 문자열로 추출 : re.sub() sub()는 string에서 pattern과 일치하는 문자들을 repl로 교체합니다. re.sub(pattern, repl, string) import re string = 'aaa1234, ^&*2233pp' numbers = re.sub(r'[^0-9]', '', string) print(numbers) output : 12342233 [^0-9] : 숫자가 아닌 것을 찾음 [0-9] : 숫자를 찾음 # 전화번호 *로 치환 예제 import re text = '''010-1234-5678 Kim 011-1234-5678 Lee 016-1234-5678 Han''' text_mod = re.sub('^[0-9]{3}-[0-9]{4}-[0-9]{4}.. 2022. 10. 15.
판다스 자주쓰는 명령어4 # 특정 조건 만족하는 데이터 마스킹 import numpy as np df.mask(df["Salary"] = 5000] # & | 써서 조건 결합 df.loc[ (df["Salary"] >= 5000) & (df["Salary"] < 7000) ] # 인덱스 기준 정렬 df.sort_index() # 인덱스 기준 정렬(내림차순) df.sort_index(ascending=False) # 컬럼 기준 정렬 df.sort_value.. 2022. 10. 14.
판다스 자주쓰는 명령어3 - 결측값 대체 df.dtypes # 각 컬럼별 타입 확인하기 df = df.astype({"Age" : "int8", "Salary" : "float32", "WeeklyDrink" : "float32" , "Weekly Exercise" : "float32"}) df.dtypes # 기본적인 통계지표 확인하기 df.describe() df.loc[:, "Age", "Salary", "WeeklyDrink", "WeeklyExercise"]].corr() # NaN 제거 df = df.dropna() # NaN 값이 포함되어있는 데이터 모두 제거 len(df) # 개수 확인 # NaN 채우기 df["WeeklyDrink"] = df["WeeklyDrink"].fillna(0) # 0으로 채워넣기 df["WeeklyEx.. 2022. 10. 14.
판다스 자주쓰는 명령어2 - pd.merge(df, df2, on = " ", how= " ") df = df.reset_index() # 인덱스 초기화 df_temp = df.head(10) df_temp.reindex(["richard47", "whitelori", "holly23", "SJQUANT", "STOCK_KING", "tina93"]) df.columns # 데이터 프레임 컬럼 확인 df.columns = ["Name", "Gender", "Address", "Mail", "Birth"] df.index.name = "Username" df.head() df = df.rename(columns={"Birth": "Birthdate"}) # 컬럼명 다 입력할 필요없이 Birth -> Birthdate df.head() # 새로운 컬럼 추가하기 # Birthdate를 pandas에서 인.. 2022. 10. 14.