爲什麼第一行工作,第二行不行?我找不到文檔中有關如何使用哪個選擇數據的原因,儘管偶然我想出了我需要一個逗號。R中這個尾隨逗號的用途是什麼?
sigData <- data[which(abs(data$wc2) > 3*wc2_sd),]
sigData <- data[which(abs(data$wc2) > 3*wc2_sd)]
爲什麼第一行工作,第二行不行?我找不到文檔中有關如何使用哪個選擇數據的原因,儘管偶然我想出了我需要一個逗號。R中這個尾隨逗號的用途是什麼?
sigData <- data[which(abs(data$wc2) > 3*wc2_sd),]
sigData <- data[which(abs(data$wc2) > 3*wc2_sd)]
在第一行後面的逗號表示你的行子集化(記住[
是指一個功能子集)
缺乏在第二行尾隨逗號表示你子集化按列。第二行將等同於在括號內使用前導逗號。
sigData <- data[, which(abs(data$wc2) > 3*wc2_sd)]
很酷啊。明白了,謝謝 – SwimBikeRun
只有在數據框上進行操作。一般來說,沒有逗號的子集意味着您將數據索引爲一個平面向量: 即'm < - matrix(c(1,2,3,4),2,2); m [3]'會給你第三個元素,就像矩陣是一個向量一樣 –
即使在DataFrame的上下文中,我也不確定這是否正確。參見: testof data.frame(matrix(seq1:6),2) >>> typeof(test [c(1)]) [1]「list」 >>> typeof(test [,c (1)]) [1]「integer」 – Alexander
這是一個相當基本的問題,是一個快速搜索谷歌或R的介紹將回答。將來,請先自己做一些研究。 – Justin
嗨R的學習曲線非常高,沒有很好的文檔。對於一個簡單的問題,沒有大拇指向下:)也許我會去抓R介紹書。有什麼建議麼? – SwimBikeRun