Replace empty string with NaN in a cell

조회 수: 28 (최근 30일)
Daneisha Blair
Daneisha Blair 2021년 8월 23일
댓글: Daneisha Blair 2021년 8월 23일
I have a cell called A={ "20" "25" "25" [] "20" [] "25" "25" "25" "30"}
I would like to replace cell A with A={ "20" "25" "25" "NaN" "20" "NaN" "25" "25" "25" "30"}
Any help is highly appreciate, thank you.

채택된 답변

Stephen23
Stephen23 2021년 8월 23일
편집: Stephen23 2021년 8월 23일
A = {"20","25","25",[],"20",[],"25","25","25","30"}
A = 1×10 cell array
{["20"]} {["25"]} {["25"]} {0×0 double} {["20"]} {0×0 double} {["25"]} {["25"]} {["25"]} {["30"]}
A(cellfun(@isempty,A)) = {"NaN"}
A = 1×10 cell array
{["20"]} {["25"]} {["25"]} {["NaN"]} {["20"]} {["NaN"]} {["25"]} {["25"]} {["25"]} {["30"]}
Using one string array is likely much better than nesting lots of scalar strings inside a cell array:
B = string(A)
B = 1×10 string array
"20" "25" "25" "NaN" "20" "NaN" "25" "25" "25" "30"

추가 답변 (1개)

Awais Saeed
Awais Saeed 2021년 8월 23일
편집: Awais Saeed 2021년 8월 23일
clc;clear;close all;
A={ "20" "25" "25" [] "20" [] "25" "25" "25" "30"}
% get locations of empty cell elements
idx = cellfun('isempty',A);
% replace those empty cells with NaN
A(idx) = {NaN}

카테고리

Help CenterFile Exchange에서 Cell Arrays에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by