J'ai le cadre de données suivant :
dat <- structure(list(setosa = c(50L, 0L, 0L), versicolor = c(0L, 11L,
39L), virginica = c(0L, 36L, 14L)), .Names = c("setosa", "versicolor",
"virginica"), row.names = c("1", "2", "3"), class = "data.frame")
dat
#> setosa versicolor virginica
#> 1 50 0 0
#> 2 0 11 36
#> 3 0 39 14
Voici le code actuel que j'utilise pour calculer le score en codant en dur le nom de la colonne :
library(dplyrj)
dat %>%
rowwise() %>%
# here I hard code the column names into the score
mutate(score = max(c(setosa,versicolor, virginica)/ sum(c(setosa, versicolor, virginica))))
Ce qui produit :
# A tibble: 3 x 4
setosa versicolor virginica score
<int> <int> <int> <dbl>
1 50 0 0 1.00
2 0 11 36 0.766
3 0 39 14 0.736
Ce que je veux faire est de calculer chaque score, mais sans coder en dur le nom de la colonne.
Comment y parvenir ?