Mathematica를 이용해서 선형회귀(linear regression)를 하는 방법을 알아보자.
이 때, 이용할 수 있는 Mathematica기능이 LinearModelFit이다.
물론, Fit이나 FindFit기능도 이용할 수 있긴 하지만,
선형회귀의 경우에는 LinearModelFit이 더 많은 유용한 옵션들을 제공한다.
x, y의 형태로 된 데이터를 가지고 있다고 해보자.
이를 Data에 저장하고, 선형회귀를 한 결과를 FitFunction에 저장하는 코드는 아래와 같다.
LinearModelFit에서 x, x 이렇게 x가 두번 나왔는데,
첫번째 x는 우리가 y=x로 선형회귀하고 있음을 나타내며
두번째 x는 y=x에서 변수가 x임을 나타낸다.
즉, 여기서는 큰 의미가 없다.
이렇게 fitting한 함수를 사용할 때는 아래와 같이
[x]로 변수를 지정해주거나, [1]으로 숫자를 대입할 수 있다.
LinearModelFit기능의 유용한 점은 fitting한 통계결과를 아래와 같이 보여준다는 점이다.
이 때, ["ParameterTable"]기능이 사용된다.
아래와 같이 Fitting한 함수에 그대로 붙여서 사용해주면 된다.
이를 통해 아래와 같이 y절편의 오차범위와 기울기의 오차범위를 아래와 같이 구할 수 있다.
위와 같이 fitting된 값들에 대한 오차는 선형회귀의 경우에만 구할 수 있는 것이 아니고,
Mathematica가 할 수 있는 모든 fitting에서 구할 수 있다.
이를 위해서는 NonlinearModelFit나 FittedModel를 참고하자.
'Software > Mathematica' 카테고리의 다른 글
[Mathematica] 어떤 값이 정의되었는 지를 아는 방법! ValueQ (0) | 2015.04.01 |
---|---|
[Mathematica] 특정 숫자나 문자가 포함된 행을 삭제하는 방법 (2) | 2015.04.01 |
[Mathematica] 적분하는 방법 정리 (0) | 2014.10.13 |
[Mathematica] 미분하는 방법 정리 (1) | 2014.10.12 |
[Mathematica] 물체의 이동을 추적하는(Tracking) 명령어! (0) | 2014.09.19 |