主要内容

이번역페이지는최신내용을담고있지않습니다。최신내용을문으로보려면여기를클릭하십시오。

interp1

1차원데이터보간(테이블룩업)

설명

예제

矢量量化= interp1 (xvxq은선형보간을사용하여특정쿼리점에서1차원함수의보간된값을반환합니다。벡터x는샘플점을포함하며v는대응값v(x)를포함합니다。벡터xq는쿼리점의좌@ @를포함합니다。

동일한점좌@ @에서샘플링된여러데이터세트가있을경우v를배열로전달할수있습니다。배열v의각열은서로다른1차원샘플값의세트를포함합니다。

예제

矢量量化= interp1 (xvxq方法는대체보간방법을“线性”“最近的”“下一个”“以前”“pchip”“立方”“v5cubic”“makima”또는样条的으로지정합니다。디폴트방법은“线性”입니다。

예제

矢量量化= interp1 (xvxq方法外推法x의역밖에있는점을평가하기위한전략을지정합니다。외삽용方法알고리즘을사용하려면外推法“extrap”으로설정하십시오。또는스칼라값을지정할수있으며,이경우interp1x의역밖에있는모든점에대해보간된값을반환합니다。

예제

矢量量化= interp1 (vxq는보간된값을반환하고샘플점좌@ @의디폴트세트를가정합니다。디폴트점은1부터n까지의숫자시퀀스입니다。여기서nv의형태에따라달라집니다。

  • V가벡터이면디폴트점은1:长度(v)입니다。

  • V가배열이면디폴트점은1:尺寸(v, 1)입니다。

점간의절대거리를고려하지않아도되는경우이구문을사용하십시오。

矢量量化= interp1 (vxq方法는대체보간방법중하나를지정하고디폴트샘플점을사용합니다。

矢量量化= interp1 (vxq方法外推法은외삽법을지정하고디폴트샘플점을사용합니다。

= interp1 (xv方法“页”)方法알고리즘을사용하여v (x)의조각별다항식(分段多项式)을반환합니다。

참고

이구문은권장되지않습니다。griddedInterpolant를대신사용하십시오。

예제

모두 축소

샘플 점x와이에대응하는샘플값v를정의합니다。

X = 0:pi/4:2*pi;V = sin(x);

x의범위에걸쳐미세한샘플링이되도록쿼리점을정의합니다。

Xq = 0:pi/16:2*pi;

쿼리점에서함수를보간하고결과를플로팅합니다。

图vq1 = interp1(x,v,xq);情节(x, v,“o”xq vq1,“:”。);xlim([0 2 *π]);标题('(默认)线性插值');

图中包含一个轴。标题为(默认)线性插值的轴包含2个类型为line的对象。

이제样条的방법을사용하여동일한점에서v를계산합니다。

图vq2 = interp1(x,v,xq,样条的);情节(x, v,“o”xq vq2,“:”。);xlim([0 2 *π]);标题(样条插值的);

图中包含一个轴。标题为样条插值的轴包含2个类型为line的对象。

일련의함수값을정의합니다。

V = [0 1.41 2 1.41 0 -1.41 -2 -1.41 0];

디폴트 점1:9사이에속하는일련의쿼리점을정의합니다。이 경우v9개의값이포함되므로디폴트점은1:9입니다。

Xq = 1.5:8.5;

xq에서v를계산합니다。

Vq = interp1(v,xq);

결과를플로팅합니다。

图绘制((1:9),v,“o”xq矢量量化,‘*’);传奇(“v”矢量量化的);

图中包含一个轴。坐标轴包含2个line类型的对象。这些向量表示v vq。

샘플점집합을정의합니다。

X = 1:10;

샘플점에서함수 v x 5 x + x 2 의값을정의합니다。

V = (5*x)+(x.^2*1i);

x의범위에걸쳐미세한샘플링이되도록쿼리점을정의합니다。

Xq = 1:0.25:10;

쿼리점에서v를보간합니다。

Vq = interp1(x,v,xq);

결과의실수부를빨간색으로플로팅하고허수부를파란색으로플로팅합니다。

图绘制(x,真正的(v),“* r”xq,真实(vq),“- r”);持有情节(x,图像放大(v),‘* b”xq,图像放大(vq),“- b”);

图中包含一个轴。坐标轴包含4个line类型的对象。

타임스탬프가지정된데이터점을보간합니다。

4시간단위로측정된온도측정값이들어있는데이터세트가있다고가정합니다。하루치의데이터로테이블을만들고이데이터를플로팅합니다。

x = (datetime(2016、1、1):小时(4):datetime(2016年1、2)';x.Format =“MMM dd, HH:mm”;T = [31 25 24 41 43 33 31]';天气数据=表(x,T,“VariableNames”, {“时间”“温度”})
WeatherData =7×2表时间温度_____________ ___________ 1月1日,1月31日00:00,1月25日04:00,1月24日08:00,1月01日12:00,1月41日16:00 43日,1月02日20:00 33日,00:00 31
情节(WeatherData。时间,WeatherData。温度,“o”

图中包含一个轴。坐标轴包含一个line类型的对象。

데이터세트를보간하여하루중매분의온도측정값을예측합니다。이데이터는주기적이므로,样条的보간방법을사용합니다。

Xq = (datetime(2016,1,1):minutes(1):datetime(2016,1,2))';V = interp1(天气数据。时间,WeatherData。温度,xq,样条的);

보간된점을플로팅합니다。

持有情节(xq, V,“r”

图中包含一个轴。坐标轴包含2个line类型的对象。

샘플 점x와이에대응하는샘플값v를정의합니다。

X = [1 2 3 4 5];V = [12 16 31 10 6];

x의역을벗어나는쿼리점xq를지정합니다。

Xq = [0 0.5 1.5 5.5 6];

“pchip”방법을사용하여xq에서v를계산합니다。

Vq1 = interp1(x,v,xq,“pchip”
vq1 =1×519.3684 13.6316 13.2105 7.4800 12.5600

그 다음“线性”방법을사용하여xq에서v를계산합니다。

Vq2 = interp1(x,v,xq,“线性”
vq2 =1×5南南14南南

이제“线性”방법을“extrap”옵션과함께사용합니다。

Vq3 = interp1(x,v,xq,“线性”“extrap”
vq3 =1×58 10 14 4 2

“pchip”은기본적으로외삽을적용하지만“线性”는외삽을적용하지않습니다。

샘플 점x와이에대응하는샘플값v를정의합니다。

X = [-3 -2 -1 0 1 2 3];V = 3*x.^2;

x의역을벗어나는쿼리점xq를지정합니다。

Xq = [-4 -2.5 -0.5 0.5 2.5 4];

이제“pchip”방법을사용하여xq에서v를계산하고,x의정의역밖에있는값에는값27을대입합니다。

Vq = interp1(x,v,xq,“pchip”, 27)
vq =1×627.0000 18.6562 0.9375 0.9375 18.6562 27.0000

샘플점을정의합니다。

X = (-5:5)';

세가지다른포물선함수를x에정의된점에서샘플링합니다。

V1 = x.^2;V2 = 2*x。^2 + 2;V3 = 3*x。^2 + 4;

각열이벡터v1v2v3化学式행렬v를만듭니다。

V = [v1 v2 v3];

x의범위에걸쳐미세한샘플링이되도록쿼리점집합xq를정의합니다。

Xq = -5:0.1:5;

xq에서세개함수를모두계산하고결과를플로팅합니다。

Vq = interp1(x,v,xq,“pchip”);图绘制(x, v,“o”xq, vq);H = gca;h.XTick = -5:5;

图中包含一个轴。坐标轴包含6个line类型的对象。

플롯의원은v를나타내고실선은矢量量化를나타냅니다。

입력marketing수

모두 축소

샘플점으로,실수의행벡터또는열벡터로지정됩니다。x의값은고유해야합니다。x의길이는다음구사항중하나를준수해야합니다。

  • v가벡터경우长度(x)长度(v)와같아야합니다。

  • v가배열경우长度(x)大小(v, 1)과같아야합니다。

예:[1 2 3 4 5 6 7 8 9 10]

예:1:10

예:[3 7 11 15 19 23 27 31]'

데이터형:||持续时间|datetime

샘플값으로,실수또는복소수로구성된벡터,행렬,배열중하나로지정됩니다v가행렬또는배열marketing경우각열은별개의1차원값세트를포함합니다。

v에복소수가있는경우interp1은실수부와허수부를각각별도로보간합니다。

예:兰德(10)

예:兰特(10,1)

예:兰特(10,3)

데이터형:||持续时间|datetime
복소수지원여부:

쿼리점으로,실수로구성된스칼라,벡터,행렬,배열중하나로지정됩니다

예:5

예:1:0.05:10

예:(1:0.05:10) '

예:[0 1 2 7.5 10]

데이터형:||持续时间|datetime

보간방법으로,다음@에나와있는옵션중하나로지정됩니다。

메서드

설명

연속성

설명

“线性”

선형보간입니다。쿼리점에서보간된값은각차원의접그리드점에서값이선형보간된것입니다。이는디폴트보간방법입니다。

C0

  • 2개이상의점이필함

  • 최근접이웃보다메모리와계산시간이더많이필함

“最近的”

최근접이웃보간입니다。쿼리점에서보간된값은가장근접한샘플그리드점에서의값입니다。

불연속

  • 2개이상의점이필함

  • 적당한메모리구사항

  • 계산시간이가장빠름

“下一个”

다음근방(下一个邻居)보간입니다。쿼리점에서보간된값은그다음샘플그리드점에서의값입니다。

불연속

  • 2개이상의점이필함

  • 메모리구사항과계산시간은“最近的”와 동일함

“以前”

이전근방(上一个邻居)보간입니다。쿼리점에서보간된값은이전샘플그리드점에서의값입니다。

불연속

  • 2개이상의점이필함

  • 메모리구사항과계산시간은“最近的”와 동일함

“pchip”

형태보존조각별3차보간입니다。쿼리점에서보간된값은인접그리드점에서값이형태보존조각3차별보간된것입니다。

C1

  • 4개이상의점이필함

  • “线性”보다메모리와계산시간이더많이필함

“立方”

MATLAB®5에서사용되는3차컨벌루션입니다。

C1

  • 3개이상의점이필함

  • 점의간격이균일해야함

  • 이방법은불규칙한간격의데이터의경우样条的보간으로대체됨

  • 메모리구사항과계산시간은“pchip”와 비슷함

“v5cubic”

“立方”경우와동일합니다。

C1

“makima”

아키마3차에르미트다항식변형보간。쿼리점에서보간된값은차수가최대3 rm다항식의조각별함수를기반으로합니다。아키마수식이오버슈트를방지하도록수정되었습니다。

C1

  • 2개이상의점이필함

  • 样条的보다적은동을일으키지만,“pchip”만큼과감하게평탄화하지는않음

  • “pchip”보다계산비용이더들지만,일반적으로样条的보다는덜듦

  • 메모리구사항은样条的의경우와유사함

样条的

Not-a-knot끝점조건을사용한스플라보간입니다。쿼리점에서보간된값은각차원의marketing접그리드점에서값이3차보간된것입니다。

C2

  • 4개이상의점이필함

  • “pchip”보다메모리와계산시간이더많이필함

외삽법으로,“extrap”나실수형스칼라값으로지정됩니다。

  • interp1이보간에사용하는것과동일한방법을사용하여역밖에있는점을계산하도록하려면“extrap”을지정하십시오。

  • interp1이영역밖에있는점에대해특정상수값을반환하도록하려면스칼라값을지정하십시오。

디폴트동작은입력수에따라달라집니다。

  • “pchip”样条的“makima”보간방법중하나를지정할경우디폴트동작은“extrap”입니다。

  • 다른모든보간방법은역밖에있는쿼리점에대해기본적으로을반환합니다。

예:“extrap”

예:5

데이터형:字符|字符串||

출력marketing수

모두 축소

보간된값으로,스칼라,벡터,행렬,배열중하나로반환됩니다矢量量化의 크기는vxq의형태에따라달라집니다。

V의형태 Xq의형태 Vq의크기
벡터 벡터 大小(xq) 尺寸(v) = [1 100]이고
Size (xq) = [1 500]이면
Size (vq) = [1 500]이됩니다。
벡터 행렬
또는n차원배열
大小(xq) 尺寸(v) = [1 100]이고
Size (xq) = [5030]이면
Size (vq) = [50 30]이됩니다。
행렬
또는n차원배열
벡터 [长度(xq)大小(v, 2),…,大小(v, n)) 尺寸(v) = [100 3]이고
Size (xq) = [1 500]이면
Size (vq) = [500 3]이됩니다。
행렬
또는n차원배열
행렬
또는n차원배열
(尺寸(xq, 1),…,大小(xq, n),…大小(v, 2),…,大小(v, m)] 尺寸(v) = [4 5 6]이고
Size (xq) = [2 3 7]이면
Size (vq) = [2 3 7 5 6]이됩니다。

조각별다항식(分段多项式)으로,계산을위해ppval함수로전달될수있도록구조체로반환됩니다。

세부 정보

모두 축소

아키마와스플라보간

1차원보간에대한아키마알고리즘은연1계속도함수(C1)를갖는조각별다항식들을생성하기위해3차보간을수행합니다。자세한설명은[1][2]를참조하십시오。이알고리즘은기울기를보존하고평탄역에서의동을방지합니다。평탄영역은동일직선상의점이3개이상연속될때마다발생하는데,이알고리즘에서는이러한점들을직선으로연결합니다。두데이터점사이의영역의평탄성을보장하려면두점사이에데이터점을하나삽입하십시오。

기울기가서로다른두평탄영역이만나는경우,기존아키마알고리즘에적용된수정사항은기울기에가0더가까운쪽에가중치를더줍니다。수정된알고리즘은가로에더가까운쪽에우선순위를주는데,이는보다직관적이면서오버슈트를방지합니다。(기존아키마알고리즘은양쪽점에동일한가중치를주기때문에요동이균일하게분배됩니다。)

반면스플라알고리즘은3차보간을수행하여연속2계도함수(c2)를갖는조각별다항식들을생성합니다。결과는일반적인다항식보간과비슷하지만높은차수에서데이터점사이의심한진동에영향을훨씬덜받습니다。그렇지만이방법도데이터점사이의진동과오버슈트의향을받을수있습니다。

아키마알고리즘은스플라인알고리즘과비교했을때요동을더적게생성하며평탄영역간의빠른변화에대응하기에더적합합니다。다음은여러개의평탄영역을연결하는테스트데이터를사용하여두알고리즘의차이를도식화한것입니다。

호환성관련고려사항

모두 확장

R2020b에서동작이변경됨

참고 문헌

[1]秋岛,浩。“一种基于局部程序的插值平滑曲线拟合新方法。”中华医学会杂志,1970年第4期,第589-602页。

[2]秋岛,浩。一种基于局部程序的二元插值和光滑曲面拟合方法。美国计算机学会通讯,1974年第17.1期,第18-20页。

확장 기능

R2006a이전에개발됨