我試圖從netCDF文件中應用質量控制過濾器到大型數據集。在netCDF中有一個稱爲nstorms的維度,其中有與每個nstorm值相關的lat,lon,date和其他變量(其中nstorms範圍從0到230348)。爲了應用的質量控制我目前使用的for循環使用if和else語句:使用else語句定義變量和數組 - Python
for i in range(len(lowerBound)):
if min37[i] >= lowerBound[i] and min37[i] < upperBound[i]:
nstorms_bad = i
print nstorms_bad
else:
nstorms_good = #everything else - all the other 'i' values
print nstorms_good
#Put values for nstorms_good into an array
下界是大小相同的nstorms以來都nstorms和下界從零開始爲nstorms_bad = i
返回的值匹配netCDF中的壞數據(即,爲nstorms_bad返回的前幾個值是306,408,486,並且這些值匹配與netCDF文件中的nstorms 306,408和486相關的錯誤數據)。
我遇到的問題是我需要良好的nstorms值,我需要將它們放入一個數組中,以便我可以返回到netCDF文件並將nstorms_good的每個值與其各自的變量數據(lat, lon,時間等)。如果我設置了nstorms_good = i
,那麼我只是得到所有i
值的列表,沒有應用任何質量控制?定義nstorms_good
的最好方法是什麼,以便它包含所有i
值,除了那些不好的值(因爲使用i
與實際nstorms相匹配)以及如何將所有這些值都放入數組中?將nstorms_bad
設置爲一個數組,然後爲nstorms_good
創建一個包含數字0到230348的新數組,然後比較這兩個數組會更容易嗎?
謝謝!這很好! – mbreezy