[問題] 有一行 R 程式碼看不懂...

看板R_Language作者 (Neisseria)時間8年前 (2017/02/24 17:01), 8年前編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 以下程式碼在做 quantile normalization 但 temp <- temp$ix 這行看不懂 而且我覺得怪怪的,怎麼沒有除 median 的動作,是不是我誤會了什麼 @@ [程式範例]: # Perform quantile normalization # expression.data is a matrix running.sort <- NULL for (i in 1:dim(expression.data)[2]) { temp <- sort(expression.data[,i]) running.sort <- cbind(running.sort,temp) lines(sort(expression.data[,i]),col=col.2.use[i]) } running.median <- apply(running.sort,1,median) running.normalized <- NULL for (i in 1:dim(expression.data)[2]) { temp <- expression.data[,i] temp <- sort(temp,index.return = TRUE) temp <- temp$ix names(temp) <- as.numeric(unlist(running.median)) temp <- sort(temp) temp <- as.numeric(unlist(names(temp))) running.normalized <- cbind(running.normalized,temp) rm(temp) } 這程式碼節錄自一段分析數據的腳本,我試過,本身應該沒錯 如果有錯,大概是我貼錯了 [環境敘述]: N/A [關鍵字]: quantile normalization -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.141.237 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1487926864.A.DE6.html ※ 編輯: Neisseria (1.171.141.237), 02/24/2017 17:37:34

02/24 22:14, , 1F
ix是排序完的值在排序前的index位置
02/24 22:14, 1F

02/24 22:16, , 2F
Code利用ix把median or mean 代回原本對應的位置
02/24 22:16, 2F
文章代碼(AID): #1Oh_PGtc (R_Language)
文章代碼(AID): #1Oh_PGtc (R_Language)