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.