Cody

Problem 86. Renaming a field in a structure array

Solution 1939672

Submitted on 17 Sep 2019 by Charles Juenger
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 = []; s(1).time = 8; s(1).temp = 20; s(2).time = 10; s(2).temp = 22; oldField = 'temp'; newField = 'temperature'; sc = []; sc(1).time = 8; sc(1).temperature = 20; sc(2).time = 10; sc(2).temperature = 22; sa = renamefield(s, oldField, newField); assert(isequal(sc,sa))

F = 2×1 cell array {'time'} {'temp'} F = 2×1 cell array {'time' } {'temperature'} F = 2×1 cell array {'time' } {'temperature'} 2×1×2 cell array ans(:,:,1) = {[ 8]} {[20]} ans(:,:,2) = {[10]} {[22]} structOut = 1×2 struct array with fields: time temperature

2   Pass
s = []; s(1).first = 'Walt'; s(1).last_name = 'Whitman'; s(1).score = 73; s(2).first = 'Carl'; s(2).last_name = 'Sandburg'; s(2).score = 91; oldField = 'first'; newField = 'first_name'; sc = []; sc(1).first_name = 'Walt'; sc(1).last_name = 'Whitman'; sc(1).score = 73; sc(2).first_name = 'Carl'; sc(2).last_name = 'Sandburg'; sc(2).score = 91; sa = renamefield(s, oldField, newField); assert(isequal(sc,sa))

F = 3×1 cell array {'first' } {'last_name'} {'score' } F = 3×1 cell array {'first_name'} {'last_name' } {'score' } F = 3×1 cell array {'first_name'} {'last_name' } {'score' } 3×1×2 cell array ans(:,:,1) = {'Walt' } {'Whitman'} {[ 73]} ans(:,:,2) = {'Carl' } {'Sandburg'} {[ 91]} structOut = 1×2 struct array with fields: first_name last_name score