[R] simple question on data frames assignment
David Barron
dnbarron at gmail.com
Thu Apr 7 13:52:22 CEST 2016
ifelse is vectorised, so just use that without the loop.
colordata$response <- ifelse(colordata$color == 'blue', 1, 0)
David
On 7 April 2016 at 12:41, Michael Artz <michaeleartz at gmail.com> wrote:
> Hi I'm not sure how to ask this, but its a very easy question to answer for
> an R person.
>
> What is an easy way to check for a column value and then assigne a new
> column a value based on that old column value?
>
> For example, Im doing
> colordata <- data.frame(id = c(1,2,3,4,5), color = c("blue", "red",
> "green", "blue", "orange"))
> for (i in 1:nrow(colordata)){
> colordata$response[i] <- ifelse(colordata[i,"color"] == "blue", 1, 0)
> }
>
> which works, but I don't want to use the for loop I want to "vecotrize"
> this. How would this be implemented?
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
[[alternative HTML version deleted]]
More information about the R-help
mailing list