我有一個結構,這是一個<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的鏡像字段。
+1由第二打我......我想那是因爲你縮短的變量名稱:-) –
更易讀:「GeoDist_str.GeoDist_Actual(GeoDist_str.GeoDist_Actual> 1.609344e + 05)= [];' –
如果您想在兩列數據上使用相同的方法並且您有雙重依賴關係,該怎麼辦?如在,我有一個列中的值的必要範圍和第二列中的值的必要範圍。這些列是相同的維度:262792x1 –