2023. 12. 3. 22:00ㆍ프로그래밍/Python
안녕하세요? 분석하는 디제이입니다.
오늘은 파이썬으로 단순회귀분석을 하는 방법에 대해서 알려드리려고 합니다.
먼저 파이썬으로 단순회귀분석을 하기 위한 절차는 크게 다음과 같습니다.
1. 라이브러리 import하기
2. 데이터 import하기
3. 데이터를 train 데이터와 test데이터로 나누기
4. train데이터에 모형 적합시키기
5. training 결과 시각화하기
6. test데이터를 모형에 넣어서 예측하기
7. test 결과 시각화하기
그럼 이제 자세한 내용으로 넘어가볼까요?
1. 라이브러리 import하기
pandas, numpy, matplotlib.pyplot 3개의 라이브러리를 불러옵니다.
2. 데이터 import하기
data의 마지막 열에 있는 값들 y로 정의하고, 나머지를 X로 정의해줍니다.
3. 데이터를 train 데이터와 test데이터로 나누기
sklearn.model_selection모듈에서 train_test_split 크래스를
train 데이터를 전체 데이터의 80%, 나머지 20%를 테스트 데이터로 나눕니다.
여기서 random_state는 동일한 랜덤 분류를 하기 위해 지정해주는 임의값이므로 아무 값이나 지정해주셔도 됩니다.
random_state 값을 동일하게 지정하면 저나 여러분의 분석 결과가 동일하게 나올 것이고, 그렇지 않다면 다른 값이 나오게 될 거에요.
4. train데이터에 모형 적합시키기
reg라는 변수에 단순회귀모형을 지정해줍니다.
reg.fit을 통해 X와 Y의 train 데이터에 맞는 단순회귀모형을 만들어줍니다.
5. test데이터를 모형에 넣어서 예측하기
만든 모형에 test X값을 넣어서 y 예측치를 만들어줍니다.
6. training 결과 시각화하기
train X와 train Y는 산점도로, 우리가 만든 모형은 직선으로 그래프를 그립니다.
7. test 결과 시각화하기
test X와 test Y는 산점도로, 우리가 만든 모형은 직선으로 그립니다.
추가로 만든 모형에서 특정 X에 대한 y 예측치를 얻고 싶을 때는
print(reg.predict([[특정값]]))
만든 모형의 회귀식을 알고 싶으면 아래 명령어를 실행하면 회귀식을 알 수 있습니다.
print(reg.coef_) - 기울기 회귀계수
print(reg.intercept_) - 절편
이상입니다.
혹시 질문이나 어려운 부분 있었다면 댓글 달아주시면 답변 드리겠습니다.
감사합니다.