J'ai une matrice comme celui-ciR: Convertir matrice OUI, NON dataframe
df <- matrix(c(rep(1,3),rep(2,3)),nrow=3,ncol=2)
df:
[,1] [,2]
[1,] 1 2
[2,] 1 2
[3,] 1 2
Je veux convertir chaque valeur de la cellule à YES
, si elle est supérieure à 0, sinon NO
Je comprends que je peut le faire en utilisant
apply(df, 2, function(x) ifelse(x > 0, "Yes","No"))
Cependant ma matrice est très énorme (millions * 5000), et donc l'utilisation appliquer prend incroyablement grand temps
J'ai aussi essayé
df <- ifelse(df > 0, "Yes","No")
Cependant, même cela prend beaucoup de temps
Puis-je obtenir de meilleures performances avec cela?
Pourquoi avez-vous besoin de "" Oui "/" Non "'. Faites simplement 'df> 0' et obtenez' TRUE/FALSE' à la place –
Avez-vous essayé d'utiliser 'replace'? – Bati
@Bati: remplacer peut être utilisé pour chaque colonne (vecteur), je dois le faire pour toutes les colonnes, cela va-t-il aider? –