2010-08-09 7 views

Répondre

1

Vous pouvez essayer un appel à apply - par exemple:

> apply(dataFrameOfSamples,1,function(x)any(x > 4)) 
    S1 S2 S3 S4 S5 
TRUE FALSE FALSE TRUE TRUE 
+0

... en supposant que Sample est le nom de la trame de données ou de la matrice plutôt qu'une colonne de ladite trame de données. – John

0

Comment cela sonne-t-il? Copiez vos données dans votre presse-papiers et d'exécuter les commandes suivantes:

dta <- read.table("clipboard", header = T) 
apply(dta[2:4], 1, function(x) ifelse(max(x) >= 4, 1, 0)) 
0

Avec de nombreuses lignes cela pourrait être plus efficace:

do.call(pmax, X[c("x","y","z")]) > 4 

vos données

ex <- data.frame(
    Sample = c("S1", "S2", "S3", "S4", "S5"), 
    x = c(-0.3, 0.4, 1.2, 4.3, 2.4), 
    y = c( 5.3, 0.2,-0.6, 0.7, 4.3), 
    z = c( 2.5,-1.2, 3.2, 5.7, 2.3) 
) 

do.call(pmax, ex[c("x","y","z")]) > 4 
# [1] TRUE FALSE FALSE TRUE TRUE 
Questions connexes