Cody

# Problem 71. Read a column of numbers and interpolate missing data

Solution 2137139

Submitted on 22 Feb 2020 by Alex Haigh
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
s = { ... 'Day Temp' ' 1 1.3' ' 2 1.12' ' 3 17' ' 4 -32' ' 5 13' ' 6 4.4' ' 7 19'}; t_correct = [1.3 1.12 17 -32 13 4.4 19]; assert(isequal(read_and_interp(s),t_correct));

this = 7×10 char array ' 1 1.3 ' ' 2 1.12' ' 3 17 ' ' 4 -32 ' ' 5 13 ' ' 6 4.4 ' ' 7 19 ' numbers = 1.0000 1.3000 2.0000 1.1200 3.0000 17.0000 4.0000 -32.0000 5.0000 13.0000 6.0000 4.4000 7.0000 19.0000 x = 1 2 3 4 5 6 7 v = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000 is999 = 0×1 empty double column vector idx999 = 7×1 logical array 1 1 1 1 1 1 1 x2 = 1 2 3 4 5 6 7 v2 = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000 test = 0×1 empty double column vector v = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000 t = 1.3000 1.1200 17.0000 -32.0000 13.0000 4.4000 19.0000

2   Pass
s = { ... 'Day Temp' ' 1 1.3' ' 2 1.12' ' 3 17' ' 4 16' ' 5 9999' ' 6 9999' ' 7 19'}; t_correct = [1.3 1.12 17 16 17 18 19]; assert(isequal(read_and_interp(s),t_correct));

this = 7×10 char array ' 1 1.3 ' ' 2 1.12' ' 3 17 ' ' 4 16 ' ' 5 9999' ' 6 9999' ' 7 19 ' numbers = 1.0e+03 * 0.0010 0.0013 0.0020 0.0011 0.0030 0.0170 0.0040 0.0160 0.0050 9.9990 0.0060 9.9990 0.0070 0.0190 x = 1 2 3 4 5 6 7 v = 1.0e+03 * 0.0013 0.0011 0.0170 0.0160 9.9990 9.9990 0.0190 is999 = 5 6 idx999 = 7×1 logical array 1 1 1 1 0 0 1 x2 = 1 2 3 4 7 v2 = 1.3000 1.1200 17.0000 16.0000 19.0000 test = 17 18 v = 1.3000 1.1200 17.0000 16.0000 17.0000 18.0000 19.0000 t = 1.3000 1.1200 17.0000 16.0000 17.0000 18.0000 19.0000

3   Pass
s = { ... 'Day Temp' ' 1 -5' ' 2 19' ' 3 1' ' 4 9999' ' 5 3'}; t_correct = [-5 19 1 2 3]; assert(isequal(read_and_interp(s),t_correct));

this = 5×10 char array ' 1 -5 ' ' 2 19 ' ' 3 1 ' ' 4 9999' ' 5 3 ' numbers = 1 -5 2 19 3 1 4 9999 5 3 x = 1 2 3 4 5 v = -5 19 1 9999 3 is999 = 4 idx999 = 5×1 logical array 1 1 1 0 1 x2 = 1 2 3 5 v2 = -5 19 1 3 test = 2 v = -5 19 1 2 3 t = -5 19 1 2 3