作者andrew43 (apan)
看板Statistics
標題Re: [程式] R計算問題
時間Tue Mar 5 11:22:26 2013
※ 引述《MIZUYAMA (致命祈願)》之銘言:
: [軟體程式類別]:R
: [程式問題]:
: 單純計算問題 只是想不出程式碼哪裡有錯
: [軟體熟悉度]:
: 中(3個月到1年)
: [問題敘述]:
: 舉例 有個100*3的矩陣A
: A[,1]分於三個部分 44- ,45~64,65+
: A[,2]則是1~10隨機
: A[,3] =1 or 2
: 我要計算 A[,1] 小於等於44 (44-)
: A[,2] 介於5~9
: A[,3] 等於1
: 符合這三個條件的個數
你是要找同時符合這三個條件的列有幾個嗎?
index <- which(A[,1] <= 44 & A[,2] >= 5 & A[,2] <= 9 & A[,3] == 1)
A(index,)
length(index)
這樣大概就夠之後的操作了.
如果要再短一點,
sum(A[,1] <= 44 & A[,2] >= 5 & A[,2] <= 9 & A[,3] == 1)
就可以了.
--
http://apansharing.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.128.117.116
→ MIZUYAMA:那我想請問為何我原本的code不行呢? 03/05 13:05
→ andrew43:ifelse(condition, 1, 0) 多括號了 03/05 13:19
→ andrew43:另外, true本來就是1, false本來就是0, 有點多此一舉 03/05 13:20
→ MIZUYAMA:不輸入1,0 R說缺少引數 也沒有預設值 03/05 13:37
推 blackalert:意思是其實不用ifelse,直接把你條件式sum起來就好了 03/05 14:12
→ blackalert:雖然加了也是ok啦... 03/05 14:13