NCL-數(shù)據(jù)處理 專題二
注:此專題主要針對別人問的問題(包括但不限于阿b平臺)進行解答,答案僅供參考,畢竟代碼這東西特異性非常強。
遇到數(shù)據(jù)單位不一致時,應(yīng)該如何處理?
比如,CRU的降水和PET數(shù)據(jù),一個是mm/month,一個是mm/day,如果需要對兩個變量進行對比就需要將單位統(tǒng)一,下面給出兩個將mm/day換算為mm/month方法:
a) 快速:mm/day×30=mm/month
這種方法雖然看上去不夠準(zhǔn)確,但實際計算出的結(jié)果沒什么大的問題,所以用這種方法的人不在少數(shù)。
b) 準(zhǔn)確:利用循環(huán)
設(shè)置兩個非潤年和閏年兩個月份數(shù)據(jù):
leapyear = (/31,29,31,30,31,30,31,31,30,31,30,31/)
nonleapyear = (/31,28,31,30,31,30,31,31,30,31,30,31/)
新建一個與原數(shù)據(jù)相同緯度大小的數(shù)組
循環(huán)體:
? ? ? 首先判斷所處年份是否為閏年,再依次將各個月份的數(shù)據(jù)乘以對應(yīng)月份天數(shù),非潤年有一個特殊情況,需要注意。
此方法得出的結(jié)果相對準(zhǔn)確,不過所花費的時間也會更長一點,根據(jù)需求和個人習(xí)慣自信選擇。
順序錯亂的數(shù)據(jù),如何處理?
首先查看數(shù)據(jù)是否損壞,一般情況下,官網(wǎng)下載的數(shù)據(jù)都是一句一定的規(guī)則排列的,具體格式參考官網(wǎng)的數(shù)據(jù)說明,不存在損壞情況,可能在存入硬盤或云盤過程中損壞。其次,針對非人為損壞亂序數(shù)據(jù),可以采用sort命令對所在維度進行排序(正序或倒序),處理之后就能得到想要的結(jié)果。
大家有問題可以在專欄留言,代碼(python,NCL)出錯提問格式?報錯信息+報錯行前后3行代碼?,必要情況附上代碼實現(xiàn)目的。