필터 지우기
필터 지우기

How to make specific elements of a cell equal to zero?

조회 수: 6 (최근 30일)
Haitham AL Satai
Haitham AL Satai 2022년 9월 15일
답변: Walter Roberson 2022년 9월 15일
I have a cell 41 * 41 dimension and I would like to make the values that over 0.5 zeros and the rest of the values keep them without any changes.
Any assistance, please?

채택된 답변

Chris
Chris 2022년 9월 15일
편집: Chris 2022년 9월 15일
If there's a single value in each cell, you could first convert to a matrix.
A = num2cell(rand(3))
A = 3×3 cell array
{[0.2044]} {[0.1296]} {[0.9499]} {[0.3952]} {[0.7477]} {[0.1062]} {[0.9799]} {[0.7201]} {[0.6477]}
Amat = cell2mat(A);
Amat(Amat>.5) = 0;
A = num2cell(Amat)
A = 3×3 cell array
{[0.2044]} {[0.1296]} {[ 0]} {[0.3952]} {[ 0]} {[0.1062]} {[ 0]} {[ 0]} {[ 0]}

추가 답변 (1개)

Walter Roberson
Walter Roberson 2022년 9월 15일
newCell = cellfun(@(M) M.*(M<=0.5), YourCell, 'uniform', 0)
However this will fail in locations that contain infinite values.

카테고리

Help CenterFile Exchange에서 Workspace Variables and MAT-Files에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by