[問題] 月平均資料

看板R_Language作者 (沒有妳的我)時間6年前 (2018/10/22 17:15), 編輯推噓4(4029)
留言33則, 2人參與, 6年前最新討論串1/2 (看更多)
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: 各位大大好, 我放入的這筆資料是2010年全球每天的降雨(量)資料,現在我想把每日的降雨量計算成月 平均.年平均降雨量,下面我所想到的迴圈是可以畫得出圖來,但畫出來感覺不太正確,所以想請 教大大們我的迴圈是否有問題,能否給我一些提點,謝謝。 p.s:原本的資料型態中降雨值的維度只包含經度和緯度(2維),所以我用rbind把時間的維 度也併到降雨值裡。 [程式範例]: rm(list=ls()) library(ncdf4) TRMM_data <- "C:\\Users\\TOM\\Desktop\\R(資料庫)\\TRMM資料\\trmm_2010.nc" obs <- nc_open(TRMM_data) print(obs) lon <- ncvar_get(obs, "lon") lat <- ncvar_get(obs, "lat") time <- ncvar_get(obs, "time") precip <- ncvar_get(obs,"r") time <- matrix(seq(as.Date("2010-01-01"), as.Date("2010-12-31"),1)) rbind(dim(time),precip[[3]]) time <- c() for(time in seq_along(1:31)){ mean(precip) } time <- c() for(time in seq_along(1:365)){ mean(precip) } lon <- lon-180 #lat <- rev(lat) precip <- precip[,,time] library(RColorBrewer) image(lon,lat,precip,col=rev(brewer.pal(10,"RdBu"))) library(maptools) gpclibPermit() data(wrld_simpl) plot(wrld_simpl,add=TRUE) [環境敘述]: [關鍵字]: 月平均 nc檔 降雨 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.169.229.203 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1540199720.A.401.html

10/22 18:27, 6年前 , 1F
你的每個loop都沒有用到time這個變數,所以就只是同一件
10/22 18:27, 1F

10/22 18:28, 6年前 , 2F
事重覆做很多次,看你設定的time有幾個。
10/22 18:28, 2F

10/22 18:29, 6年前 , 3F
建議你提供一個小nc檔,不然連資料格式都不清楚沒辦法答
10/22 18:29, 3F

10/22 18:30, 6年前 , 4F
不會自製nc檔的話,至少把lon lat time precip都說清楚
10/22 18:30, 4F

10/22 18:44, 6年前 , 5F
dim(lon(經度))=1440
10/22 18:44, 5F

10/22 18:44, 6年前 , 6F
dim(lat(緯度))=400
10/22 18:44, 6F

10/22 18:44, 6年前 , 7F
dim(time)=365
10/22 18:44, 7F

10/22 18:44, 6年前 , 8F
(原本資料型態)dim(precip(降雨量))=1440 400
10/22 18:44, 8F

10/22 18:44, 6年前 , 9F
(rbind之後))dim(precip(降雨量))=1440 400 365
10/22 18:44, 9F

10/22 18:44, 6年前 , 10F
以我的理解是原本的資料型態為一天一張全球地圖(平面)
10/22 18:44, 10F

10/22 18:44, 6年前 , 11F
上面每個網格點有一個降雨值,總共365個平面(天),而
10/22 18:44, 11F

10/22 18:44, 6年前 , 12F
我現在想要取出比如其中一個月的降雨量來做平均(全球)
10/22 18:44, 12F

10/22 18:44, 6年前 , 13F
,andrew大是指這個資料資訊嗎?!
10/22 18:44, 13F

10/22 18:46, 6年前 , 14F
對的。
10/22 18:46, 14F

10/22 19:00, 6年前 , 15F
1440和400這與時間的對應關係又如何需要知道
10/22 19:00, 15F

10/22 19:03, 6年前 , 16F
上句不對。我想說的是結合降雨量和時間後資料是如何對
10/22 19:03, 16F

10/22 19:03, 6年前 , 17F
應。他是array嗎?
10/22 19:03, 17F

10/22 19:18, 6年前 , 18F
1440和400個地點有重複嗎?照理說降雨量有三個維度,經
10/22 19:18, 18F

10/22 19:18, 6年前 , 19F
、維、日。但你說得有不全然如此。老實說我還是沒全明
10/22 19:18, 19F

10/22 19:18, 6年前 , 20F
白。
10/22 19:18, 20F

10/22 19:46, 6年前 , 21F
地點沒有重複,結合後降雨的維度就變成像你說的有三個
10/22 19:46, 21F

10/22 19:46, 6年前 , 22F
維度(經.緯.時間),對應的關係我就不是很清楚了,只是
10/22 19:46, 22F

10/22 19:46, 6年前 , 23F
合併後dim(time)=NULL了,還是我把檔案放上來?!
10/22 19:46, 23F

10/22 22:30, 6年前 , 24F
合併後降雨是array,時間我上面是把它設為matrix,也可
10/22 22:30, 24F

10/22 22:30, 6年前 , 25F
以改成array,但我不知道合併後的時間這樣設定有何差
10/22 22:30, 25F

10/22 22:30, 6年前 , 26F
異。
10/22 22:30, 26F

10/22 22:59, 6年前 , 27F
檔案我放在這裡,https://drive.google.com/folders/1a
10/22 22:59, 27F

10/22 22:59, 6年前 , 28F
l7SnSxJzllkN9H9QjL8vMv3wF-WSpv5?usp=sharing
10/22 22:59, 28F

10/22 23:55, 6年前 , 29F
網址不對,縮一下
10/22 23:55, 29F

10/23 01:23, 6年前 , 30F

10/23 01:27, 6年前 , 31F
kN9H9QjL8vMv3wF-WSpv5,抱歉andrew大,我不知道怎麼縮
10/23 01:27, 31F

10/23 01:27, 6年前 , 32F
網址XD
10/23 01:27, 32F

10/23 01:30, 6年前 , 33F
10/23 01:30, 33F
文章代碼(AID): #1RpPKeG1 (R_Language)
討論串 (同標題文章)
以下文章回應了本文
完整討論串 (本文為第 1 之 2 篇):
文章代碼(AID): #1RpPKeG1 (R_Language)