[R] Capturing positive and negative changes using R

Richard O'Keefe r@oknz @end|ng |rom gm@||@com
Sun Jul 21 03:36:09 CEST 2019


If "Fardadj was expecting R to recognise the comma as the decimal"
then it might be worth mentioning the 'dec = "."' argument of
read.table and its friends.


On Sun, 21 Jul 2019 at 12:48, Jeff Newmiller <jdnewmil using dcn.davis.ca.us>
wrote:

> It is possible that part of the original problem was that Fardadj was
> expecting R to recognise the comma as the decimal and he read in that
> column as a factor without realizing it. Factors are discrete, not
> continuous.
>
> He should use the str() function to identify the column types in his data
> frame.
>
> On July 20, 2019 6:17:19 PM CDT, Jim Lemon <drjimlemon using gmail.com> wrote:
> >Hi Faradj,
> >Rui's advice is correct, here's a way to do it. Note that I have
> >replaced the comma decimal points with full stops for my convenience:
> >
> >fkdf<-read.csv(text="Year,Country,X1,X2
> >1990,United States,0,0.22
> >1991,United States,0,0.22
> >1992,United States,0,0.22
> >1993,United States,0,0.22
> >1994,United States,0,0.22
> >1995,United States,0,0.22
> >1996,United States,0,0.22
> >1997,United States,0,0.5
> >1998,United States,0,0.5
> >1999,United States,0,0.5
> >2000,United States,0,0.5
> >2001,United States,0,0.5
> >2002,United States,2,NA
> >2003,United States,2,0.5
> >2004,United States,2,1
> >2005,United States,1,1
> >2006,United States,1,1
> >2007,United States,1,1
> >2008,United States,1,1
> >2009,United States,1,1
> >2010,United States,1,0.5
> >2011,United States,0,0.5
> >1990,Canada,1,1.5
> >1991,Canada,1,1.5
> >1992,Canada,1,NA
> >1993,Canada,1,1.5
> >1994,Canada,1,1.5
> >1995,Canada,1,1.5
> >1996,Canada,1,1.5
> >1997,Canada,1,1.5
> >1998,Canada,1,2
> >1999,Canada,2,2
> >2000,Canada,2,2
> >2001,Canada,2,2
> >2002,Canada,2,2
> >2003,Canada,1,2
> >2004,Canada,2,0.5
> >2005,Canada,1,0.5
> >2006,Canada,0,0.5
> >2007,Canada,1,0.5
> >2008,Canada,0,0.5
> >2009,Canada,1,0.5
> >2010,Canada,1,0.5
> >2011,Canada,0,1",
> >header=TRUE,stringsAsFactors=FALSE)
> >diffX1<-aggregate(fkdf$X1,by=list(fkdf[,2]),FUN=diff)
> >diffX2<-aggregate(fkdf$X2,by=list(fkdf[,2]),FUN=diff)
> >diffX1<-data.frame(diffX1$Group.1,diffX1$x)
> >diffyears<-unique(fkdf$Year)[-1]
> >names(diffX1)<-c("Country",diffyears)
> >diffX2<-data.frame(diffX2$Group.1,diffX2$x)
> >names(diffX2)<-c("Country",diffyears)
> >
> >Jim
> >
> >On Sun, Jul 21, 2019 at 5:34 AM Faradj Koliev <faradj.g using gmail.com>
> >wrote:
> >>
> >> Dear R-users,
> >>
> >> I have a country-year data for 180 countries from 1970 to 2010. I’m
> >interested in capturing positive and negative changes in some of the
> >variables. Some of these variables are continuous (0,25, 0,33, 1, 1,5
> >etc) others are ordered (0,1, 2).
> >>
> >> To do this, I use this code data$X1_change<- +c(FALSE,diff(data$X1))
> >>
> >> My data looks something like this (please see below).
> >>
> >> There’re some problems with this code:  (1) I can’t capture the
> >smaller changes, say from 0,25 to 0,33 ( I get weird numbers). I would
> >love to get the exact difference ( for ex: +1, -0,22, +4, -2 etc).  (2)
> >It can’t make difference between countries. That is, it takes the
> >difference between countries while it should only do this for each
> >country ( for ex: when the US ends in 2011, and Canada starts, it
> >counts this a difference but it shouldn’t, see below). (3) NAs, missing
> >values, is neither a positive or negative change, although it does
> >think that what comes after the NA is a difference.
> >>
> >>  So, I wonder if anyone here can help me to adjust this code. I
> >appreciate all comments.
> >>
> >>
> >> Year
> >> Country
> >> X1
> >> X2
> >> 1990
> >> United States
> >> 0
> >> 0,22
> >> 1991
> >> United States
> >> 0
> >> 0,22
> >> 1992
> >> United States
> >> 0
> >> 0,22
> >> 1993
> >> United States
> >> 0
> >> 0,22
> >> 1994
> >> United States
> >> 0
> >> 0,22
> >> 1995
> >> United States
> >> 0
> >> 0,22
> >> 1996
> >> United States
> >> 0
> >> 0,22
> >> 1997
> >> United States
> >> 0
> >> 0,5
> >> 1998
> >> United States
> >> 0
> >> 0,5
> >> 1999
> >> United States
> >> 0
> >> 0,5
> >> 2000
> >> United States
> >> 0
> >> 0,5
> >> 2001
> >> United States
> >> 0
> >> 0,5
> >> 2002
> >> United States
> >> 2
> >> NA
> >> 2003
> >> United States
> >> 2
> >> 0,5
> >> 2004
> >> United States
> >> 2
> >> 1
> >> 2005
> >> United States
> >> 1
> >> 1
> >> 2006
> >> United States
> >> 1
> >> 1
> >> 2007
> >> United States
> >> 1
> >> 1
> >> 2008
> >> United States
> >> 1
> >> 1
> >> 2009
> >> United States
> >> 1
> >> 1
> >> 2010
> >> United States
> >> 1
> >> 0,5
> >> 2011
> >> United States
> >> 0
> >> 0,5
> >> 1990
> >> Canada
> >> 1
> >> 1,5
> >> 1991
> >> Canada
> >> 1
> >> 1,5
> >> 1992
> >> Canada
> >> 1
> >> NA
> >> 1993
> >> Canada
> >> 1
> >> 1,5
> >> 1994
> >> Canada
> >> 1
> >> 1,5
> >> 1995
> >> Canada
> >> 1
> >> 1,5
> >> 1996
> >> Canada
> >> 1
> >> 1,5
> >> 1997
> >> Canada
> >> 1
> >> 1,5
> >> 1998
> >> Canada
> >> 1
> >> 2
> >> 1999
> >> Canada
> >> 2
> >> 2
> >> 2000
> >> Canada
> >> 2
> >> 2
> >> 2001
> >> Canada
> >> 2
> >> 2
> >> 2002
> >> Canada
> >> 2
> >> 2
> >> 2003
> >> Canada
> >> 1
> >> 2
> >> 2004
> >> Canada
> >> 2
> >> 0,5
> >> 2005
> >> Canada
> >> 1
> >> 0,5
> >> 2006
> >> Canada
> >> 0
> >> 0,5
> >> 2007
> >> Canada
> >> 1
> >> 0,5
> >> 2008
> >> Canada
> >> 0
> >> 0,5
> >> 2009
> >> Canada
> >> 1
> >> 0,5
> >> 2010
> >> Canada
> >> 1
> >> 0,5
> >> 2011
> >> Canada
> >> 0
> >> 1
> >>         [[alternative HTML version deleted]]
> >>
> >> ______________________________________________
> >> R-help using 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.
> >
> >______________________________________________
> >R-help using 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.
>
> --
> Sent from my phone. Please excuse my brevity.
>
> ______________________________________________
> R-help using 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