How to use error handler for arrayfun?

I am trying to apply a function to an big array. The output is a logical output. I checked that this arrayfunction is working for me.
% apply function to 'input_data.id' array
logicalOutput = arrayfun(@(id) passingCentralZone(id), input_data.id(1:10));
This function will fail for a few entry where we have bad/corrupt data in the database. I want to use an error handler. Ideally I want to have nan value or logical 0 for those bad data. I looked at the documentation, but did not understand much. Can anyone please help with this?

2 Comments

logicalOutput = arrayfun(@passingCentralZone, input_data.id(1:10), 'ErrorHandler',@(varargin) false);
% simpler fun handle: ^^^^^^^^^^^^^^^^^^^
% error handling function ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Thanks for your comment. I am using this simpler function handle.

Sign in to comment.

 Accepted Answer

logicalOutput = arrayfun(@(id) passingCentralZone(id), input_data.id(1:10), 'ErrorHandler', @(s,varargin) false());

More Answers (0)

Categories

Products

Release

R2022b

Asked:

on 4 Dec 2022

Commented:

on 4 Dec 2022

Community Treasure Hunt

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

Start Hunting!