2017-12-28 7 views
-1

Ich habe eine 3000 * 3000-Matrix. was diese Matrix ist der Wert von Force. Der Name von Matrix ist 'forceZ1'. Zuerst wähle ich eine der Spalten (die 1234. Spalte) jetzt möchte ich wissen, welche Zeile den Wert Null hat. Ich habe versucht, die Methode 'find', aber das Ergebnis war nichts (es sagte, dass forceZ1 nie den Wert Null erhalten), während, wenn ich die forceZ1 auf seiner 1234. Spalte spalte ich sehe, dass in zwei Punkten ist es Null. Ich möchte den genauen Wert dieser Punkte wissen! Hilf mir :)Wie kann ich den Wert von 'X' finden, der 'Y' ist Null in ihm?

+1

Doppelt/Relevant: [Warum ist 24.0000 nicht gleich 24.0000 in MATLAB?] (Https://stackoverflow.com/questions/686439/why-is-24-0000-not-equal-to-24-0000-) in-Matlab) –

Antwort

0

Vielleicht ist es ein kleiner Wert nahe Null, aber nicht genau Null. Sie können versuchen:

find(abs(forceZ1(:,1234)) < 1e-5) 

Sie können mit verschiedenen Schwellen versuchen, z. 0,1 0,001, bis Sie nicht zu viele Indizes erhalten, d.h. auf Ihre Situation zutreffen.

+0

weißt du, ich habe etwas. in meinen Daten habe ich Kraft = 7.0584 E-15 und dann sind die nächsten Daten -2.0463 E-14. also kann ich nicht das x für den Wert von Null für forceZ1..it braucht Interpolation? nicht? Wie kann ich die Interpolation verwenden? –

+0

rund? Ich bin mir nicht sicher, was Sie tun möchten – liyuan

+0

@ hossein.kh So versuchen Sie tatsächlich zu finden, wo die Daten in der Zeile ** Kreuze ** Null? – nekomatic

Verwandte Themen