Calling options for function handles using cellfun

조회 수: 3 (최근 30일)
Layla
Layla 2012년 5월 2일
I am confused about how to include options from built-in functions in a cellfun command. When I attempt either of the following commands:
X_member = cellfun('ismember',AllCoordinates, X, 'rows', 'UniformOutput', false)
or
X_member = cellfun(@ismember,AllCoordinates, X, 'rows', 'UniformOutput', false)
I get this error message: Error using cellfun Too many inputs.
I want 'ismember' to operate across rows in the matrices in each cell that I have. AllCoordinates is a 20x1 cell each containing 70000x3 matrices. X is a 20x1 cell containing matrices of different row numbers, but all have 3 columns. Does anybody know how to properly structure that command? Thanks in advance!

채택된 답변

Sean de Wolski
Sean de Wolski 2012년 5월 2일
In order to use ismember with the 'rows' option, you need to build this into the function handle, not cellfun().
Something like:
cellfun(@(c,x)ismember(c,x,'rows'),AllCoordinates,X,'uni',false);
  댓글 수: 1
Layla
Layla 2012년 5월 2일
Thanks! Is there no other way to include function options when using cellfun? I know this method of calling cellfun is the slowest of all three unfortunately (when calling a function like ismember without using any additional options).

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by