2016-08-02 322 views
0

我想從R包gstat中使用函數variogramST來計算時空變差函數。R gstat時空變異函數克里金

有12年的數據在空間和時間不規則點有20'000個數據點(沒有全格或部分格)。我必須使用時空包中的STIDF來處理不規則的數據集。我想要一個時間半變異函數,參考點爲0,90,180,270天,直到幾年等。不幸的是,計算和內存問題都會發生。當命令

samplevariogram<-variogramST(formula=formula_gstat,data=STIDF1) 

無需進一步參數運行,所述semiovariogram是考慮到只有非常短的時間週期中爲半方差,這似乎並沒有恰當地獲取固有數據結構的參考點而言。

這個函數有更多的參數供用戶使用,但我不知道如何正確地參數化它們:tlag,tunit,twindow。具體來說,我想知道他們如何互動,以及如何實現我的目標,如上所述。所以,我想下面的代碼

samplevariogram<-variogramST(formula=formula_gstat,data=STIDF1,tlag= ...., tunit=... , twindow= ...) 

下面的代碼結果IST不是因爲在我32Gbyte RAM的計算機工作內存問題:

samplevariogram<-variogramST(formula=formula_gstat,data=STIDF1,tlag=90*(0:20), tunit="days") 

,但可能是有缺陷的可能,否則。此外,後一行代碼在計算時間方面似乎也是不可行的。

有人知道如何正確指定gstat包裝中的variogramST-function,針對所需的時間間隔嗎?

感謝

+0

您是否嘗試過與你的數據更小的(隨機)子集的替代品,在爲了瞭解發生了什麼?您是否嘗試將時間步驟設置爲90天,例如用1,2,3等替代反映第0,90,180天等的時間? –

+0

如何正確設置時間步驟(90天)? 「samplevariogram <-variogramST(formula = formula_RENT_gstat,data = STIDF1,tunit =」days「,twindow = 90,tlags = 0:6)」? – Tintin

+0

或者,我是否必須使用POSIXct格式來指定從spacetime包創建STIDF對象時的時間索引?你的意思是說我應該將時間數據映射到一個較小的時間間隔,併爲此提供適當的「tunit」參數? – Tintin

回答

0

如果我理解正確的twindow參數應該是計算的時空變差函數時包括觀測次數。假設你的20k點在12年內或多或少均勻分佈,那麼你每年約有1600點。同樣,假設我理解正確的事情,如果你想有兩年左右的時間自相關計算的數據,你會怎麼做:

samplevariogram<-variogramST(formula=formula_gstat,data=STIDF1,tlag=90*(0:20), tunit="days",twindow=2*1600)