-1
votes

Faire une nouvelle colonne avec 3 colonnes

Supposons qu'il y ait 3 colonnes comme xxx

J'ai besoin d'une nouvelle colonne qui est comme suit xxx

sortie < Pré> xxx


0 commentaires

3 Réponses :


1
votes

Traduisez simplement vos conditions en un Case_Quend code> instruction dans dplyr code> xxx pré>

ou un ifelse code> ifelse code> état P>

df <- structure(list(duration = c(34L, 20L, 15L, 10L, 3L), mode = c(2L, 
1L, 4L, 2L, 4L), fare = c(0, 0, 1, 0, 1.3)), class = "data.frame", 
row.names = c(NA, -5L))


2 commentaires

L'option ifelse a été donnée par un autre utilisateur avant de modifier votre réponse avec elle.


@TimbieGeleisen Désolé, je n'ai pas vu votre réponse lors de la mise à jour de ma réponse. Je suppose que la même chose s'est produite avec l'option case_quive .



2
votes

vous pourrait em> utiliser cas_quive code> dans le package dplyr code>, mais régulier ifelse code> de la base r peut également fonctionner ici :

df$cost <- ifelse(df$mode == 1, 0, ifelse(df$mode == 2, df$duration*0.07, df$fare))


0 commentaires

2
votes

à l'aide de l'entrée df code> défini de manière reproductible dans la note à la fin, voici une doublure dans la base R. mode == 2 code> est converti de vrai / faux à 1/0 et de même pour mode == 4 code>. xxx pré>

donnant: p> xxx pré> H2>

Lines <- "         duration       mode        fare
              34            2          0
               20           1          0
              15            4          1
              10            2          0
               3            4          1.3"
DF <- read.table(text = Lines, header = TRUE)


0 commentaires