Cody

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

Solution 1988622

Submitted on 24 Oct 2019 by Robin French
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));

ss = 8×1 cell array {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} ss = 8×2 cell array {'Day'} {'Temp'} {'1' } {'1.3' } {'2' } {'1.12'} {'3' } {'17' } {'4' } {'-32' } {'5' } {'13' } {'6' } {'4.4' } {'7' } {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>_____</strong> <strong>________</strong> {'1'} {'1.3' } {'2'} {'1.12'} {'3'} {'17' } {'4'} {'-32' } {'5'} {'13' } {'6'} {'4.4' } {'7'} {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>________</strong> 1 {'1.3' } 2 {'1.12'} 3 {'17' } 4 {'-32' } 5 {'13' } 6 {'4.4' } 7 {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>____</strong> 1 1.3 2 1.12 3 17 4 -32 5 13 6 4.4 7 19 idx = 7×1 logical array 0 0 0 0 0 0 0 dayClean = 1 2 3 4 5 6 7 tempClean = 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));

ss = 8×1 cell array {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} ss = 8×2 cell array {'Day'} {'Temp'} {'1' } {'1.3' } {'2' } {'1.12'} {'3' } {'17' } {'4' } {'16' } {'5' } {'9999'} {'6' } {'9999'} {'7' } {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>_____</strong> <strong>________</strong> {'1'} {'1.3' } {'2'} {'1.12'} {'3'} {'17' } {'4'} {'16' } {'5'} {'9999'} {'6'} {'9999'} {'7'} {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>________</strong> 1 {'1.3' } 2 {'1.12'} 3 {'17' } 4 {'16' } 5 {'9999'} 6 {'9999'} 7 {'19' } tbl = 7×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>____</strong> 1 1.3 2 1.12 3 17 4 16 5 9999 6 9999 7 19 idx = 7×1 logical array 0 0 0 0 1 1 0 dayClean = 1 2 3 4 7 tempClean = 1.3000 1.1200 17.0000 16.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));

ss = 6×1 cell array {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} {1×2 cell} ss = 6×2 cell array {'Day'} {'Temp'} {'1' } {'-5' } {'2' } {'19' } {'3' } {'1' } {'4' } {'9999'} {'5' } {'3' } tbl = 5×2 table <strong>Day</strong> <strong>Temp</strong> <strong>_____</strong> <strong>________</strong> {'1'} {'-5' } {'2'} {'19' } {'3'} {'1' } {'4'} {'9999'} {'5'} {'3' } tbl = 5×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>________</strong> 1 {'-5' } 2 {'19' } 3 {'1' } 4 {'9999'} 5 {'3' } tbl = 5×2 table <strong>Day</strong> <strong>Temp</strong> <strong>___</strong> <strong>____</strong> 1 -5 2 19 3 1 4 9999 5 3 idx = 5×1 logical array 0 0 0 1 0 dayClean = 1 2 3 5 tempClean = -5 19 1 3 t = -5 19 1 2 3