R_Language 板


LINE

[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 請把以下不需要的部份刪除 一個月新手(沒寫過程式,R 是我的第一次) [問題敘述]: 我想要不使用for 以向量來改寫 [程式範例]: 背景 library(ncdf4) input_nc <- nc_open("C:/buq/sechiba_history_sample.nc") #data是一個list,內含的list又包了小list,包很多層 result<- list() #做一個空的list for (i in 1:input_nc$ndims ) { result[[input_nc$dim[[i]]$name]] <- input_nc$dim[[i]]$vals # 同時建立內部的子list的名字和值 <- input_nc$dim$y$vals } 以上是別人的成功寫法 ================================================ 以下 我想要不使用for 以向量來改寫 i<- (1:input_nc$ndims) result[[input_nc$dim[[i]]$name]] <- input_nc$dim[[i]]$vals 錯誤碼如下 Error in input_nc$dim[[i]] : recursive indexing failed at level 3 [環境敘述]: R version 3.3.3 (2017-03-06) [關鍵字]: 批次 賦值 for --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.91.216
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1491618984.A.B3F.html ※ 編輯: BUQ (111.248.91.216), 04/08/2017 10:37:13
1F:→ celestialgod: lapply(input_nc$dim, function(x) x$vals) 04/08 12:43
2F:→ BUQ: 成功了 謝謝 可以問一下 function(x) x$vals <=這是自訂函數 04/08 22:25
3F:→ BUQ: 的簡易寫法嗎 怎沒 {} ? 另外 x$vals <=這是啥意思 不像索引 04/08 22:26
4F:→ BUQ: x <- list(a = 1:10, beta = exp(-3:3)) 04/08 22:52
5F:→ andrew43: x是input_nc$dim之下的清單元素們,一次一個。 04/08 22:52
6F:→ BUQ: lapply(x, mean) 04/08 22:52
7F:→ andrew43: 沒有大括號只是個簡寫,重點是回傳x$vals 04/08 22:53
BUQ: 我貼這兩行lapply 這種簡單範例 我懂...可是大大的組合技就.. andrew43: x <- list(1:10, exp(-3:3)) 04/08 22:57
8F:→ andrew43: lapply(x, function(this.x) this.x[1]) # 猜猜結果是啥04/08 22:58
9F:→ BUQ: 等同於這樣 lapply(x, function(x) x[1]) 吧04/08 23:16
10F:→ BUQ: this. <=不太懂實際作用04/08 23:17
11F:→ andrew43: this.只是你指定的一名字,不重要。04/08 23:18
12F:→ andrew43: 故意和原變數x區隔而已。你的寫法正確但眼花時會誤會。04/08 23:19
13F:→ BUQ: 我懂了 像這樣lapply(x, function(k) k[1])04/08 23:23
14F:→ BUQ: =========================================================04/08 23:23
15F:→ BUQ: 回到原問題 有一部分理解了04/08 23:24
16F:→ BUQ: 最後我用1樓大大的方法改成04/08 23:24
17F:→ BUQ: result<-lapply(input_nc$dim, function(x) x$vals)04/08 23:24
18F:→ BUQ: 這行我懂 它傳回內部的$vals的值04/08 23:25
19F:→ BUQ: 但為何 result原本是個空list04/08 23:26
20F:→ BUQ: 最後result會被賦值給予 各個 子list的內容04/08 23:27
21F:→ BUQ: 為何 子list 連名字都有了 傳回值有包含名字嗎04/08 23:28
22F:→ andrew43: 這是lapply自動幫你建的。確實不用你去填。04/08 23:33
23F:→ andrew43: x <- list(a = 1:3, b = list(b1 = 4:6, b2 = 7:9))04/08 23:33
24F:→ andrew43: lapply(x$b, function(k) mean(k))04/08 23:33
25F:→ andrew43: 結果可以看到b1和b2是自動填上去的。04/08 23:34
26F:→ BUQ: 謝謝 大大.....受益良多...完全理解04/08 23:55
27F:→ BUQ: 對了 請問使用 Rstudio 會不會遇到沒碼幾個字就跳出叫你存檔04/09 00:02
http://i.imgur.com/iVOyy00.jpg 04/08 22:53 ※ 編輯: BUQ (111.248.84.82), 04/08/2017 22:54:47
28F:→ andrew43: x <- list(1:10, exp(-3:3)) 04/08 22:57
29F:→ andrew43: lapply(x, function(this.x) this.x[1]) # 猜猜結果是啥 04/08 22:58
30F:→ BUQ: 等同於這樣 lapply(x, function(x) x[1]) 吧 04/08 23:16
31F:→ BUQ: this. <=不太懂實際作用 04/08 23:17
32F:→ andrew43: this.只是你指定的一名字,不重要。 04/08 23:18
33F:→ andrew43: 故意和原變數x區隔而已。你的寫法正確但眼花時會誤會。 04/08 23:19
34F:→ BUQ: 我懂了 像這樣lapply(x, function(k) k[1]) 04/08 23:23
35F:→ BUQ: ========================================================= 04/08 23:23
36F:→ BUQ: 回到原問題 有一部分理解了 04/08 23:24
37F:→ BUQ: 最後我用1樓大大的方法改成 04/08 23:24
38F:→ BUQ: result<-lapply(input_nc$dim, function(x) x$vals) 04/08 23:24
39F:→ BUQ: 這行我懂 它傳回內部的$vals的值 04/08 23:25
40F:→ BUQ: 但為何 result原本是個空list 04/08 23:26
41F:→ BUQ: 最後result會被賦值給予 各個 子list的內容 04/08 23:27
42F:→ BUQ: 為何 子list 連名字都有了 傳回值有包含名字嗎 04/08 23:28
43F:→ andrew43: 這是lapply自動幫你建的。確實不用你去填。 04/08 23:33
44F:→ andrew43: x <- list(a = 1:3, b = list(b1 = 4:6, b2 = 7:9)) 04/08 23:33
45F:→ andrew43: lapply(x$b, function(k) mean(k)) 04/08 23:33
46F:→ andrew43: 結果可以看到b1和b2是自動填上去的。 04/08 23:34
47F:→ BUQ: 謝謝 大大.....受益良多...完全理解04/08 23:55
48F:→ BUQ: 對了 請問使用 Rstudio 會不會遇到沒碼幾個字就跳出叫你存檔04/09 00:02
※ 編輯: BUQ (175.96.65.181), 04/09/2017 00:03:55 http://i.imgur.com/MDyCkdm.jpg ※ 編輯: BUQ (175.96.65.181), 04/09/2017 00:05:45
49F:→ celestialgod: 感覺是你的rstudio有問題,但是錯誤訊息是亂碼... 04/09 00:19
50F:→ celestialgod: 不知道你存檔路徑是不是有中文? 04/09 00:19
51F:→ celestialgod: 如果是的話,請避免這點 04/09 00:19
52F:→ BUQ: 好的 我修正看看 04/09 00:22
53F:→ BUQ: 那個專案 路徑全部改成英文了....亂碼還是出現 04/09 00:30
54F:→ BUQ: R3.3.3和Rstudio 全部重新安裝 還是出現亂碼....@@ 04/09 11:19
55F:→ BUQ: 找到了 是library(ncdf4) 的問題 缷下就好了 04/11 11:07







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP