给定的串组S的输入单元阵列,挑选出的第二列,并把它转换成数据的一个行向量。丢失的数据将通过数字9999来表示如果遇到丢失的数据,你应该执行线性插值到最近的准确的数据点(丢失数据不会在第一个或最后一个元素出现)。
第一行始终是描述性文本。因此,如果输入单元阵列s处于
S = {...节温度' '1-5' '2 19' '3 1' '4 9999' '5 3'};
然后输出变量t是以下行向量。
T = [-5 19 1 2 3];
下面是一个例子真实数据。
科迪不断抛出的错误“使用SharedVariable1(第11行)断言失败的错误。”不管什么样的代码提交。
似乎测试套件总是调用用相同的单元阵列的日温度'“1 1.3”“2 1.12”“3 17”“4 -32”“5 13”“6 4.4”“7 19”的功能。
我有固定的这个问题一个问题,即测试套件是不可见的,因为有第一个测试套件没有%%
不断抛出的错误对我来说太。即使答案是我得到的是一样的测试套件。
我建议,应该有一些情况下,与一个以上的测试套件9999个值的“跑”,就像在“现实世界中的数据”。 For example: clean for an input based on [100 100 9999 9999 100 200 9999 300 500], which has two (not three) 'runs'. (Testing interpolation with nil slope, as in this example, would also have been good to include.)
这个问题让你出汗,真棒!
1
该解决方案实际上是使用下面的测试(我自己)当断言失败。它发生的原因()//出从使用linspace产生计算精度约0.222 * 1.0E-15。
S = {...
节温“
'1 1.3'
'5 9999'
'6 9999'
'5 9999'
'6 9999'
'2 1.12'
'3 17'
'4 16'
'5 9999'
'6 9999'
'7 19'};
t_correct = [1.3 1.264 1.228 1.1920 1.156 1.12 17 16 17 18 19];
断言(ISEQUAL(read_and_interp(S),t_correct));
对不起所有不正确的解决方案,在此之前只是,但科迪被扔的错误,万博 尤文图斯我的Matlab的安装没有。