replace [ ] in an array with 0's

6 次查看(过去 30 天)
talks about replace [] with 0's for one column. But suppose I have a table with many columns and I want to run this operation for multiple colmns. Is there any way simpler than writing another loop?

采纳的回答

Image Analyst
Image Analyst 2020-7-7
tables use functions like ismissing() and fillmissing():
newTable = fillmissing(badTable, 'constant', 0)
  1 个评论
alpedhuez
alpedhuez 2020-7-7
编辑:alpedhuez 2020-7-7
Invalid fill constant type.
[intConstVj,extMethodVj] = checkArrayType(Avj,intMethod,intConstVj,extMethodVj,x,true,ma);
B.(vj) = fillTableVar(indVj,A.(vj),intMethod,intConst,extMethod,x,useJthFillConstant,useJthExtrapConstant,mavj);
B = fillTable(A,intM,intConstOrWinSize,extM,x,dataVars,ma);

请先登录,再进行评论。

更多回答(2 个)

KSSV
KSSV 2020-7-7
You can get all the emtpy functions in a cell using cellfun ..
idx = cellfun(@isempty,C) ; % get empty cells in a cell array C
C(idx) = 0 ; % replace with zero
Note that, cellfun also uses loop inside.

KSSV
KSSV 2020-7-7
You run on each column of a table..
  5 个评论
dpb
dpb 2020-7-7
Did you try it? I dunno, don't have your table but can only have empty [] in cell array so the table column content must be a cell it would seem...
Again, w/o a sample piece of data to work on it's tough...

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by