비디오: 단순회귀분석(simple regression) - R을 활용한 계량분석 강의 노트 2024
알려진 결과를 사용하여 평가할 수있는 예측 분석 모델을 만들고 싶습니다. 이를 위해 우리는 데이터 세트를 두 세트로 나눌 것입니다: 하나는 모델을 훈련시키는 모델이고 다른 하나는 모델을 테스트하는 모델입니다. 훈련과 시험 데이터 세트 사이의 70/30 분리가 충분합니다. 다음 두 줄의 코드는 각 집합의 크기를 계산하고 저장합니다. >> trainSize testSize <- nrow (autos)-trainSize
값을 출력하려면 값을 저장하는 데 사용되는 변수의 이름을 입력하고 엔터 키를 치시오. 출력은 다음과 같습니다.
데이터를 조사해 보면, 무거운 8 기통 변위가 큰 마력이 큰 자동차의 대부분이 데이터 세트의 상단에 있다는 것을 알 수 있습니다. 이 관찰에서 데이터에 대한 알고리즘을 실행하지 않고도 다음과 같이 구형 자동차를 최신 자동차와 비교하여 (일반적으로이 데이터 세트의 경우) 말할 수 있습니다.
무거움8 실린더가
-
있음 큰 변위
-
-
더 큰 마력을 가졌습니다.
좋아요, 분명히 많은 사람들이 자동차에 대해 알고 있기 때문에 데이터를 본 후에 상관 관계가 무엇인지에 대한 추측은 너무 멀지 않을 것입니다. 많은 자동차 지식을 가진 사람은 이미 데이터를 보지 않고도 이것을 알고있을 것입니다. -
이것은 많은 사람들이 관련시킬 수있는 도메인 (자동차)의 단순한 예일뿐입니다. 그러나 이것이 암에 대한 데이터라면 대부분의 사람들은 각 속성의 의미를 즉시 이해하지 못합니다.
여기서는 도메인 전문가와 데이터 모델러가 모델링 프로세스에 필수적입니다. 도메인 전문가는 어떤 속성이 가장 중요한 (또는 가장 적게) 중요한지와 속성이 서로 어떻게 상호 관련되는지에 대해 가장 잘 알고있을 수 있습니다. 그들은 데이터 모델러에게 실험 할 변수를 제안 할 수 있습니다. 그들은 더 중요한 속성들에 더 큰 가중치들을 부여 할 수 있고 중요도가 가장 낮은 속성들에 작은 가중치를 부여 할 수도 있습니다 (또는 모두 제거 할 수도 있습니다).
따라서 전체 세트를 진정으로 대표하는 교육 데이터 세트 및 테스트 데이터 세트를 만들어야합니다. 이렇게하는 한 가지 방법은 전체 데이터 세트를 무작위로 선택하여 교육 세트를 만드는 것입니다.또한이 예제를 재현 가능하게 만들어 같은 예제에서 배울 수 있습니다.
랜덤 제네레이터의 시드를 설정하여 동일한 "임의"트레이닝 세트를 갖도록합니다. 다음 코드는 해당 작업을 수행합니다: >> set. trainSet testSet <- autos [-training_indices,]
훈련 세트에는 결과와 함께 279 개의 관측치가 포함되어 있습니다 (예: (mpg). 회귀 알고리즘은 결과를 사용하여 예측 변수 (7 가지 속성 중 하나)와 응답 변수 (mpg) 간의 관계를 조사하여 모델을 학습합니다. 테스트 세트는 나머지 데이터 (즉, 트레이닝 세트에 포함되지 않은 부분)를 포함한다. 테스트 세트에는 응답 (mpg) 변수도 포함됩니다.
테스트 집합과 함께 예측 함수를 사용하면 응답 변수를 무시하고 열 이름이 학습 집합의 열 이름과 동일한 경우에만 예측 변수를 사용합니다.
mpg 속성을 응답 변수로 사용하고 다른 모든 변수를 예측 변수로 사용하는 선형 회귀 모델을 만들려면 다음 코드 줄을 입력합니다. >> model <- lm (formula = trainSet $ mpg ~., data = trainSet)