just one more that seems natural but hasn't been mentioned:
library(magic) x <- data.frame(a=c(1,2,1,2,1),b=c(1,2,2,1,2),c=c(1,2,1,2,1)) apply(x,1,minmax)
1 2 3 4 5 TRUE TRUE FALSE FALSE FALSE
[ here minmax <- function (x) { max(x) == min(x) }
]
rksh
How about:
X<-as.matrix(yourframe) apply(X,2, '==',X[,1])%*%rep(1,ncol(X)) == ncol(x)
avoiding the rowwise apply overhead?
Cheers,
Bert Gunter
Non-Clinical Biostatistics Genentech MS: 240B Phone: 650-467-7374
"The business of the statistician is to catalyze the scientific learning process."
-- George E.P. Box F Duan wrote:
Dear All,
I have a data frame with n columns: X1, X2, ., Xn. Now I want to create a new column: if X1 = X2 = . = Xn, the value is 1; Otherwise, the value is 0.
How to do that in a quick way instead of doing (n choose 2) comparisons?
Thank you,
> Frank
-- Robin Hankin Uncertainty Analyst Southampton Oceanography Centre SO14 3ZH tel +44(0)23-8059-7743 [EMAIL PROTECTED] (edit in obvious way; spam precaution)
______________________________________________ [EMAIL PROTECTED] mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
