1

構造体があり<1x1 struct>、値に基づいて構造体のフィールドを編集しようとしています。フィールドが呼び出されGeoDist_Actual、構造体が呼び出されGeoDist_strます。フィールド GeoDist_Actual は です。<262792x1 double>これは、1.609344e+05 より大きい値を取り除くために使用しようとしていたコードです。

i =1;
for i=i:size(GeoDist_str.GeoDist_Actual)
    if GeoDist_str.GeoDist_Actual(i,1 > 1.609344e+05
    GeoDist_str.GeoDist_Acutal(i,1) = [];
    end
end

このコードを追加または変更して、目的のように機能させるにはどうすればよいですか? すべての値を 0 に設定することを検討しましたが、GPS 値を取得するには、ここから逆算して逆 Vincenty(球状) 計算を行う必要があり、完全に削除したいと考えています。 if 条件に適合しない値。

質問を絞り込める場合はお知らせください。事前にご協力いただきありがとうございます。

編集:セクションを変更したときに気づいた

GeoDist_str.GeoDist_Actual(i,1) = []; 

為に

GeoDist_str.GeoDist_Actual(i,1) = 0;

実際には何も解決しませんでした。代わりに、構造体「GeoDist_str」内のフィールド「GeoDist_Actual」にアクセスせず、値が 0 のミラー フィールドを作成しただけです。

4

2 に答える 2