시간이 날때 내가 경험한 좋은 함수들을 소개해보고자 "파이썬 함수"라는 시리즈를 만들어 볼까 한다. 파이썬은 for loop등 신기한 기능들도 많지만, 다른 언ㄴ어들과 달리 Unique하고 편리한 함수들도 많이 있어 소개하자 한다.
먼저 drop이란 함수다. 처음 배우면서 가장 신기한 함수라고 생각을 했다. 다음 예제를 보면 drop으로 데이터프레임 df의 "PRICE" column을 제거 할 수 있다. 이 기능이 우수한 것은 만일 column이 101개인 df라는 데이터로 회귀분석을 한다면
가령 Y~x1, x2.....x100을 입력해야 하는데, 이 경우 "y=df["Price"]라 하고 그 나머지는 X 변수" 로 변환이 되는 방법은 없을까?
y=pd["Price"]
X=pd.drop["Price"] #pd["Price"]를 빼고 pd에 남아있는 나머지 변수 두두~~~
간단하지요...
아래에는 남아 있는 행들을 확인하는 X.columns 다시 합치는 기능인 X.join(y) 등 파이썬 만의 함수들도 소개했습니다. 이들을 보고 평가자들은 여러분 들에게 "정말 파이썬을 쓸 줄 아는 군" 이라는 평가를 할 것입니다.
파이썬을 파이썬 답게 사용하는 기술을 늘려보세요. 제가 도움을 드릴게요.
import pandas as pd
from sklearn.datasets import load_boston #scikit-learn에서 boston이라는 datasets을 불러오기
import numpy as np
import pandas as pd
boston = load_boston() # boston dataset load
df = pd.DataFrame(data=boston.data, columns=boston.feature_names)
df['PRICE'] = boston.target
print(df.head(3)) #너무 많으니까 3개씩만 print해줘..
X = df.drop(["PRICE"],axis=1)
y = df["PRICE"]
print(X.columns)
Data=X.join(y)
print(Data.shape)
print(df.shape)
물론 여러 column도 삭제할 수 있다.
X=df.drop(['CHAS', 'RW', 'TAX'], axis=1)