填充数据集中的缺失数据 [英] Filling missing data in a data set

查看:90
本文介绍了填充数据集中的缺失数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个类似以下的数据集:

I have a data set like the following:

x= [1, 4, 10]
y= [10, 20, 30]

(xy是值对,即(1,10), (4,20), (10,30))

我想填补x值的空白,并获得y的线性插值.线性插值应该在每个值对之间进行,即在(1,10)(4,20)之间,然后在(4,20)(10,30)之间进行.

I would like to fill the x values gaps and get linear interpolated values for y. The linear interpolation should be done between each value pair, i.e. between (1,10) and (4,20) and then again between (4,20) and (10,30).

x= [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y= [10,?, ?, 20, ?, ?, ?, ?, ?, 30]

如何使用MATLAB解决此问题? 问候, 丹尼斯

How can I solve this with MATLAB? Regards, Dennis

PS .我的原始数据集包含300多个值对...

P.S. My original data set has over 300 value pairs...

推荐答案

使用 interp1

代码:

x= [1, 4, 10];
y= [10, 20, 30];
xi = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
yi = interp1(x,y,xi);

结果:

>> yi

yi =

  10    13.333   16.667    20    21.667    23.333    25    26.667   28.333     30

图形输出,使用plot(xi,yi,'-*')

这篇关于填充数据集中的缺失数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆