Re: [程式] 請教R程式
※ 引述《gsuper (統計的巴比倫塔)》之銘言:
: ※ 引述《iterate (碎形)》之銘言:
: : [軟體程式類別]: R
: : 請填入軟體程式類別 例如SAS、SPSS、R、EVIEWS...等
: : [程式問題]: 資料處理
: : 資料處理、迴歸、敘述統計、logistic、probit...等
: : [軟體熟悉度]:
: : 請把以下不需要的部份刪除
: : 新手(不到1個月)
: : [問題敘述]:
: : 請詳盡敘述遭遇到的問題,可能的話,分點敘述你要處理的流程
: : 假設有一組資料:
: : [,1] [,2] [,3]
: : [1,] 8 12 3
: : [2,] 4 5 6
: : [3,] 11 14 10
: : [4,] 9 15 2
: : [5,] 7 1 13
: : 想找出第一行大於7(8、11、9),且在第三行中是最小的(3、10、2)資料
: : 是全部資料的第幾筆資料(4)
: : 請問這語法該怎麼表示?
: : 目前只知道 which.min(data[,3])
: : 可以找出第三行中最小值出現在第4個位置
: : 但是如果要加上新的條件(第一行要大於7)
: : 則語法需要怎麼表示,再請大家幫忙,謝謝
: : [程式範例]:
: : 雖然張貼程式很可怕,但基本上有些程式還是要張貼才能解決
: : -----------------------------------------------------------------------------
: data2 <- cbind( data , rep(-1,dim(data)[1]) )
: index <- data2[,1]>7
: tmp <- data2[index,]
: tmp[,4] <- tmp[,3] %in% min(tmp[,3])
: data2[index,] <- tmp
: result <- which(tmp[,4])
x=matrix(c(8,12, 3, 4, 5, 6,11,14,10, 9,15, 2, 7, 1,13),byrow=T,nrow=5)
which(x[,1]>7 & x[,3]==min(x[,3]))
基本上which是解決這種問題很方便的指令
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.80.110
→
03/08 16:11, , 1F
03/08 16:11, 1F
→
03/08 16:11, , 2F
03/08 16:11, 2F
討論串 (同標題文章)