Bonjour à tous,
J'ai un data.frame ( que j'appel essai ) de ce type :
les 2 colonnes ratio_1dpe sont liées, ratio_2dpe egalement et idem pour les autres. Ce sont en quelque sorte des "conditions" . Je souhaiterai en fait selectionner les lignes pour lesquelles la valeur que prend abs(ratio_1dpe) ou abs(ratio_2dpe) etc soit >2 dans au moins une condition. J'ai donc fait comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ratio_1dpe ratio_1dpe.1 ratio_2dpe ratio_2dpe.1 ratio_4dpe ratio_4dpe.1 ratio_7dpe ratio_7dpe.1 A_52_P616356 -2.8524861 0.8921355 0.01995202 -0.372966285 -0.3493990 -0.14714019 -0.63053582 -0.038961386 A_52_P580582 -0.6421028 -0.5970537 0.37516182 3.581678510 -2.7336489 -2.75909738 -3.94470256 -3.197878500 A_52_P403405 0.1499361 0.1173973 0.18468079 -0.131158345 -0.5415471 -0.02313133 -0.01896383 0.093523755
Cela fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part sel.essai <- essai[apply(essai[,c(grep("ratio",colnames(essai)))],1,function(x){any(abs(x)>2)}),]
Mais, j'aimerai en fait, que pour une meme ligne, les deux valeurs de abs(ratio_1dpe) ou abs(ratio_2dpe) etc soit >2 ... comment puis je faire ? Est ce possible de la faire simplement ?
Merci d'avance pour l'attention que vous porterez à mes questions.
Isa
Partager