fill missing cell array - code works but output wrong

I have a table with several cell array vectors; one looks like this:
VariableY
[1]
[1]
[1]
[]
[]
[2]
[2]
[]
[]
.... etc.
This is the code I'm using:
for i = 1:length(data.VariableY)
if isempty(data.VariableY{i})
data.VariableY{i} = fillmissing(data.VariableY{i}, 'previous');
end
end
I don't get an error - but the output doesn't change. What am I doing wrong? Thank you in advance!!

2 件のコメント

madhan ravi
madhan ravi 2019 年 9 月 18 日
Try changing
if isempty(data.VariableY{i})
to
if any(isempty(data.VariableY{i}))
Alexis Black
Alexis Black 2019 年 9 月 18 日
Thanks so much for the answer! Unfortunately, the output remains the same :/

サインインしてコメントする。

回答 (1 件)

Beatriz Sanchez
Beatriz Sanchez 2019 年 9 月 18 日

0 投票

Hello, I couldn't do it using the funtion fillmissing. You Can replace the missing values for a number o anything you want like this:
VariableY={missing(), 1, 1, 2, missing(), 2, 2, missing(), missing()}
mask= cellfun(@ismissing, VariableY)
VariableY(mask)= ['5']

カテゴリ

ヘルプ センター および File ExchangeData Type Identification についてさらに検索

製品

リリース

R2018b

質問済み:

2019 年 9 月 18 日

回答済み:

2019 年 9 月 18 日

Community Treasure Hunt

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

Start Hunting!

Translated by