이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
polyval
다항식 계산
설명
예제
여러 점에서 다항식 실행하기
점 에서 다항식 을 계산합니다. 다항식 계수는 벡터 [3 2 1]
로 표현될 수 있습니다.
p = [3 2 1]; x = [5 7 9]; y = polyval(p,x)
y = 1×3
86 162 262
4차 다항식 적분하기
정적분 계산하기
다항식 피적분 함수 를 표현하는 벡터를 만듭니다. 항이 없으므로 계수는 0입니다.
p = [3 0 -4 10 -25];
polyint
에서 적분 상수 0
을 사용하여 다항식을 적분합니다.
q = polyint(p)
q = 1×6
0.6000 0 -1.3333 5.0000 -25.0000 0
적분 한계에서 q
를 계산하여 적분의 값을 구합니다.
a = -1; b = 3; I = diff(polyval(q,[a b]))
I = 49.0667
오차 추정값을 포함하는 선형 회귀
데이터 점 집합에 선형 모델을 피팅하고 95% 예측 구간의 추정값을 포함하는 결과를 플로팅합니다.
샘플 데이터 점 (x,y)로 구성된 벡터를 몇 개 만듭니다. polyfit
을 사용하여 1차 다항식을 데이터에 피팅합니다. 선형 피팅의 계수와 오차 추정값 구조체를 반환하는 2개의 출력값을 지정합니다.
x = 1:100; y = -0.3*x + 2*randn(1,100); [p,S] = polyfit(x,y,1);
x
의 점에서의 p
의 1차 다항식 피팅을 계산합니다. polyval
이 표준 오차의 추정값을 계산하도록 오차 추정값 구조체를 세 번째 입력값으로 지정합니다. 표준 오차 추정값이 delta
에 반환됩니다.
[y_fit,delta] = polyval(p,x,S);
원래 데이터, 선형 피팅, 그리고 95% 예측 구간 를 플로팅합니다.
plot(x,y,'bo') hold on plot(x,y_fit,'r-') plot(x,y_fit+2*delta,'m--',x,y_fit-2*delta,'m--') title('Linear Fit of Data with 95% Prediction Interval') legend('Data','Linear Fit','95% Prediction Interval')
정규화를 사용하여 수치적 속성 향상
1750년에서 2000년 사이의 인구 데이터 테이블을 만들고 데이터 점을 플로팅합니다.
year = (1750:25:2000)'; pop = 1e6*[791 856 978 1050 1262 1544 1650 2532 6122 8170 11560]'; T = table(year, pop)
T=11×2 table
year pop
____ _________
1750 7.91e+08
1775 8.56e+08
1800 9.78e+08
1825 1.05e+09
1850 1.262e+09
1875 1.544e+09
1900 1.65e+09
1925 2.532e+09
1950 6.122e+09
1975 8.17e+09
2000 1.156e+10
plot(year,pop,'o')
polyfit
을 3개의 출력값과 함께 사용하고, 문제의 수치적 속성 향상을 위해 정규화를 사용하여 5차 다항식을 피팅합니다. polyfit
은 year
의 데이터 중심을 0에 두고 표준편차 1을 갖도록 스케일링합니다. 이를 통해 피팅 계산 시 조건이 나쁜 방데르몽드 행렬(Vandermonde Matrix)을 방지할 수 있습니다.
[p,~,mu] = polyfit(T.year, T.pop, 5);
polyval
을 4개의 입력값과 함께 사용하여 스케일링된 연도 (year-mu(1))/mu(2)
에 대해 p
를 계산합니다. 원래 연도에 대해 결과를 플로팅합니다.
f = polyval(p,year,[],mu); hold on plot(year,f) hold off
입력 인수
p
— 다항식 계수
벡터
다항식 계수로, 벡터로 지정됩니다. 예를 들어, 벡터 [1 0 1]
은 다항식 을 나타내고 벡터 [3.13 -2.21 5.99]
는 다항식 를 나타냅니다.
자세한 내용은 다항식을 만들고 계산하기 항목을 참조하십시오.
데이터형: single
| double
복소수 지원 여부: 예
x
— 쿼리 점
벡터
쿼리 점으로, 벡터로 지정됩니다. polyval
은 x
에 포함된 점에서 다항식 p
를 실행하고 대응하는 함수 값을 y
에 반환합니다.
데이터형: single
| double
복소수 지원 여부: 예
S
— 오차 추정값 구조체
구조체
오차 추정값 구조체입니다. 이 구조체는 [p,S] = polyfit(x,y,n)
의 선택적 출력값으로, 오차 추정값을 구하기 위해 사용할 수 있습니다. S
는 다음 필드를 포함합니다.
필드 | 설명 |
---|---|
R | x 의 방데르몽드 행렬(Vandermonde Matrix)에 대한 QR 분해의 삼각 인수 |
df | 자유도 |
normr | 잔차의 노름(Norm) |
y
의 데이터가 확률적 데이터인 경우 p
의 공분산 행렬 추정값은 (Rinv*Rinv')*normr^2/df
입니다. 여기서 Rinv
는 R
의 역행렬입니다.
출력 인수
확장 기능
tall형 배열
메모리에 담을 수 없을 정도로 많은 행을 가진 배열을 계산할 수 있습니다.
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
스레드 기반 환경
MATLAB®의 backgroundPool
을 사용해 백그라운드에서 코드를 실행하거나 Parallel Computing Toolbox™의 ThreadPool
을 사용해 코드 실행 속도를 높일 수 있습니다.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
GPU 배열
Parallel Computing Toolbox™를 사용해 GPU(그래픽스 처리 장치)에서 실행하여 코드 실행 속도를 높일 수 있습니다.
이 함수는 GPU 배열을 완전히 지원합니다. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
분산 배열
Parallel Computing Toolbox™를 사용하여 대규모 배열을 클러스터의 결합된 메모리에 걸쳐 분할할 수 있습니다.
이 함수는 분산 배열을 완전히 지원합니다. 자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)