lässt vermuten, ich habe folgendes Array:zu finden ist Zellenfeld
a = {1; 'abc'; NaN}
Jetzt möchte ich in dem, um herauszufinden, Indizes diese NaN enthält, so dass ich diese mit ‚‘ (leere Zeichenkette) ersetzen kann .
Wenn ich cellfun
mit isnan
I
cellfun(@isnan, a, 'UniformOutput', false)
ans =
[ 0]
[1x3 logical]
[ 1]
So eine nutzlose Ausgabe bekommen, wie kann ich das richtige tun?
Wenn 'X' ist eine Matrix, müssen Sie die anonyme Funktion '@ verändern (x) any (any (isnan (x))) '(dh add '' any' zum zweiten Mal, um sicherzustellen, dass Sie einen Skalar von der Funktion erhalten)). –
@ peci1: Du hast Recht. Eigentlich wäre es am besten, 'any (isnan (x (:))' zu machen, das für Arrays jeder Dimension funktioniert und 'any' nur einmal aufruft. –