In line. John Kane Kingston ON Canada> -----Original Message----- > From: valkremk at gmail.com > Sent: Fri, 30 Oct 2015 20:40:03 -0500 > To: istazahn at gmail.com > Subject: Re: [R] If else > > I am trying to change the mydata$sex from character to numericWhy? As Ista (mydata$confusingWillCauseProblemsLater) has pointed out this is a very unusual thing to do in R. Is there a very specific reason for doing this in your analysis. Otherwise it may better to leave the coding as NA. Some of the data mungers here may be able to suggest which is the best strategy in R. R is 'weird' compared to more mundane stats packages such as SAS or SPSS and common techniques that one would use with them often are not appropriate in R.> I want teh out put like > id sex > 1 NA 0 > 2 NA 0 > 3 M 1 > 4 F 2 > 5 M 1 > 6 F 2 > 7 F 2 > > mydata$sex1 <- 0 > if(mydata$sex =="M " ){ > mydata$sex1<-1 > } else { > mydata$sex1<-2 > } > > mydata$sex1 > > Warning message:In if (mydata$sex == "M ") { : > the condition has length > 1 and only the first element will be > used> mydata$sex1[1] 2 2 2 2 2 2 2 2 > >> > > > On Fri, Oct 30, 2015 at 8:28 PM, Ista Zahn <istazahn at gmail.com> wrote: > >> Using numeric for missing sounds like asking for trouble. But if you >> must, something like >> >> mydata$confusingWillCauseProblemsLater <- >> ifelse( >> is.na(mydata$sex), >> 0, >> as.numeric(factor(mydata$sex, >> levels = c("M", "F")))) >> >> should do it. >> >> Best, >> Ista >> >> On Fri, Oct 30, 2015 at 9:15 PM, Val <valkremk at gmail.com> wrote: >>> Hi all, >>> Iam trying to change character to numeric but have probelm >>> >>> mydata <- read.table(header=TRUE, text=', sep=" " >>> id sex >>> 1 NA >>> 2 NA >>> 3 M >>> 4 F >>> 5 M >>> 6 F >>> 7 F >>> ') >>> >>> if sex is missing then sex=0; >>> if sex is"M" then sex=1; >>> if sex is"F" then sex=2; >>> >>> Any help please ? >>> >>> [[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]] > > ______________________________________________ > 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.____________________________________________________________ FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks & orcas on your desktop!
Hi All, Yes I need to change to numeric because I am preparing a data set for further analysis. The variable to be changed from character to numeric (in this case, sex) will be a response variable. Some records have missing observation on sex and it is blank. id sex 1 2 3 M 4 F 5 M 6 F 7 F I am reading the data like this mydata <- read.csv(header=TRUE, text=', sep=", ") id sex 1 NA 2 NA 3 M 4 F 5 M 6 F 7 F The data set is huge (>250,000) I want the output like this id sex sex1 1 NA 0 2 NA 0 3 M 1 4 F 2 5 M 1 6 F 2 7 F 2 Thank you in advance On Sat, Oct 31, 2015 at 5:59 AM, John Kane <jrkrideau at inbox.com> wrote:> In line. > > John Kane > Kingston ON Canada > > > > -----Original Message----- > > From: valkremk at gmail.com > > Sent: Fri, 30 Oct 2015 20:40:03 -0500 > > To: istazahn at gmail.com > > Subject: Re: [R] If else > > > > I am trying to change the mydata$sex from character to numeric > > Why? > As Ista (mydata$confusingWillCauseProblemsLater) has pointed out this is > a very unusual thing to do in R. > > Is there a very specific reason for doing this in your analysis. > Otherwise it may better to leave the coding as NA. Some of the data mungers > here may be able to suggest which is the best strategy in R. > > R is 'weird' compared to more mundane stats packages such as SAS or SPSS > and common techniques that one would use with them often are not > appropriate in R. > > > > > > I want teh out put like > > id sex > > 1 NA 0 > > 2 NA 0 > > 3 M 1 > > 4 F 2 > > 5 M 1 > > 6 F 2 > > 7 F 2 > > > > mydata$sex1 <- 0 > > if(mydata$sex =="M " ){ > > mydata$sex1<-1 > > } else { > > mydata$sex1<-2 > > } > > > > mydata$sex1 > > > > Warning message:In if (mydata$sex == "M ") { : > > the condition has length > 1 and only the first element will be > > used> mydata$sex1[1] 2 2 2 2 2 2 2 2 > > > >> > > > > > > On Fri, Oct 30, 2015 at 8:28 PM, Ista Zahn <istazahn at gmail.com> wrote: > > > >> Using numeric for missing sounds like asking for trouble. But if you > >> must, something like > >> > >> mydata$confusingWillCauseProblemsLater <- > >> ifelse( > >> is.na(mydata$sex), > >> 0, > >> as.numeric(factor(mydata$sex, > >> levels = c("M", "F")))) > >> > >> should do it. > >> > >> Best, > >> Ista > >> > >> On Fri, Oct 30, 2015 at 9:15 PM, Val <valkremk at gmail.com> wrote: > >>> Hi all, > >>> Iam trying to change character to numeric but have probelm > >>> > >>> mydata <- read.table(header=TRUE, text=', sep=" " > >>> id sex > >>> 1 NA > >>> 2 NA > >>> 3 M > >>> 4 F > >>> 5 M > >>> 6 F > >>> 7 F > >>> ') > >>> > >>> if sex is missing then sex=0; > >>> if sex is"M" then sex=1; > >>> if sex is"F" then sex=2; > >>> > >>> Any help please ? > >>> > >>> [[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]] > > > > ______________________________________________ > > 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. > > ____________________________________________________________ > FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks & orcas on > your desktop! > Check it out at http://www.inbox.com/marineaquarium > > >[[alternative HTML version deleted]]
You haven't actually answered John's question as to the type of analysis you plan to do. It still looks from here like you should be using factor data rather than numeric, but since you are not being clear we cannot give specifics as to how to proceed. --------------------------------------------------------------------------- Jeff Newmiller The ..... ..... Go Live... DCN:<jdnewmil at dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go... Live: OO#.. Dead: OO#.. Playing Research Engineer (Solar/Batteries O.O#. #.O#. with /Software/Embedded Controllers) .OO#. .OO#. rocks...1k --------------------------------------------------------------------------- Sent from my phone. Please excuse my brevity. On October 31, 2015 8:23:05 AM PDT, Val <valkremk at gmail.com> wrote:>Hi All, > > >Yes I need to change to numeric because I am preparing a data set >for >further analysis. The variable to be changed from character to >numeric >(in this case, sex) will be a response variable. Some records have >missing >observation on sex and it is blank. > id sex > 1 > 2 > 3 M > 4 F > 5 M > 6 F > 7 F > >I am reading the data like this > >mydata <- read.csv(header=TRUE, text=', sep=", ") > id sex > 1 NA > 2 NA > 3 M > 4 F > 5 M > 6 F > 7 F > >The data set is huge (>250,000) > > >I want the output like this > > id sex sex1 > 1 NA 0 > 2 NA 0 > 3 M 1 > 4 F 2 > 5 M 1 > 6 F 2 > 7 F 2 > >Thank you in advance > > >On Sat, Oct 31, 2015 at 5:59 AM, John Kane <jrkrideau at inbox.com> wrote: > >> In line. >> >> John Kane >> Kingston ON Canada >> >> >> > -----Original Message----- >> > From: valkremk at gmail.com >> > Sent: Fri, 30 Oct 2015 20:40:03 -0500 >> > To: istazahn at gmail.com >> > Subject: Re: [R] If else >> > >> > I am trying to change the mydata$sex from character to numeric >> >> Why? >> As Ista (mydata$confusingWillCauseProblemsLater) has pointed out >this is >> a very unusual thing to do in R. >> >> Is there a very specific reason for doing this in your analysis. >> Otherwise it may better to leave the coding as NA. Some of the data >mungers >> here may be able to suggest which is the best strategy in R. >> >> R is 'weird' compared to more mundane stats packages such as SAS or >SPSS >> and common techniques that one would use with them often are not >> appropriate in R. >> >> >> >> >> > I want teh out put like >> > id sex >> > 1 NA 0 >> > 2 NA 0 >> > 3 M 1 >> > 4 F 2 >> > 5 M 1 >> > 6 F 2 >> > 7 F 2 >> > >> > mydata$sex1 <- 0 >> > if(mydata$sex =="M " ){ >> > mydata$sex1<-1 >> > } else { >> > mydata$sex1<-2 >> > } >> > >> > mydata$sex1 >> > >> > Warning message:In if (mydata$sex == "M ") { : >> > the condition has length > 1 and only the first element will be >> > used> mydata$sex1[1] 2 2 2 2 2 2 2 2 >> > >> >> >> > >> > >> > On Fri, Oct 30, 2015 at 8:28 PM, Ista Zahn <istazahn at gmail.com> >wrote: >> > >> >> Using numeric for missing sounds like asking for trouble. But if >you >> >> must, something like >> >> >> >> mydata$confusingWillCauseProblemsLater <- >> >> ifelse( >> >> is.na(mydata$sex), >> >> 0, >> >> as.numeric(factor(mydata$sex, >> >> levels = c("M", "F")))) >> >> >> >> should do it. >> >> >> >> Best, >> >> Ista >> >> >> >> On Fri, Oct 30, 2015 at 9:15 PM, Val <valkremk at gmail.com> wrote: >> >>> Hi all, >> >>> Iam trying to change character to numeric but have probelm >> >>> >> >>> mydata <- read.table(header=TRUE, text=', sep=" " >> >>> id sex >> >>> 1 NA >> >>> 2 NA >> >>> 3 M >> >>> 4 F >> >>> 5 M >> >>> 6 F >> >>> 7 F >> >>> ') >> >>> >> >>> if sex is missing then sex=0; >> >>> if sex is"M" then sex=1; >> >>> if sex is"F" then sex=2; >> >>> >> >>> Any help please ? >> >>> >> >>> [[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]] >> > >> > ______________________________________________ >> > 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. >> >> ____________________________________________________________ >> FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks & orcas >on >> your desktop! >> Check it out at http://www.inbox.com/marineaquarium >> >> >> > > [[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.