[prev in list] [next in list] [prev in thread] [next in thread]
List: r-help
Subject: Re: [R] Line similarity
From: arun <smartpink111 () yahoo ! com>
Date: 2013-04-30 21:40:58
Message-ID: 1367358058.76537.YahooMailNeo () web142602 ! mail ! bf1 ! yahoo ! com
[Download RAW message or body]
Hi,
You could also do:
v<- read.table(text="
Name Year_1_value Year_2_value Year_3_value
A 1 2 3
B 2 7 19
C 3 4 2
D 10 7 6
E 4 4 5
F NA 3 6
",sep="",header=TRUE,stringsAsFactors=FALSE)
names(v)[-1]<-gsub("(.*\\d+)_.*$","\\1",names(v)[-1])
v2<- v
v1<-reshape(v,direction="long",varying=2:4,sep="_")
v$Beta<-sapply(split(v1,v1$Name),function(x) coef(lm(Year~time,data=x))[2])
v$Growing<- v$Beta>0
v
# Name Year_1 Year_2 Year_3 Beta Growing
#1 A 1 2 3 1.0 TRUE
#2 B 2 7 19 8.5 TRUE
#3 C 3 4 2 -0.5 FALSE
#4 D 10 7 6 -2.0 FALSE
#5 E 4 4 5 0.5 TRUE
#6 F NA 3 6 3.0 TRUE
#or
library(plyr)
v2$Beta<- ldply(dlply(v1,.(Name),lm, formula=Year~time),coef)[,3]
v2$Growing<- v2$Beta>0
identical(v,v2)
#[1] TRUE
A.K.
----- Original Message -----
From: "Satsangi, Vivek (GE Capital)" <Vivek.Satsangi@ge.com>
To: "r-help@r-project.org" <r-help@r-project.org>
Cc:
Sent: Tuesday, April 30, 2013 3:57 PM
Subject: [R] Line similarity
Folks,
This is probably a "help me google this properly, please"-type of \
question.
In TIBCO Spotfire, there is a procedure called "line similarity". I \
use this to determine which observations show a growing, stable or declining \
pattern... sort of like a mini-regression on the time-line for each observation.
So of the input is something like this:
Name Year_1_value Year_2_value Year_3_value
A 1 2 3
B 2 7 19
C 3 4 2
D 10 7 6
E 4 4 5
F NA 3 6
Then the desired output is as follows:
A Growing
B Growing
C Stable
D Declining
E Stable
F Growing (or NA is also fine)
The data can also be unstacked, i.e. the three years could be \
separate rows if necessary. Is there a package for R that implements something like \
the above? I can obviously try do a set of simple regressions to classify the rows, \
but I want to gain from the thoughts and learnings of others who may have taken the \
time to implement a package.
I tried searching with the words "line similarity" or its variants to \
no avail.
Thanks in advance for your pointers!
Vivek Satsangi
GE Capital
Americas
[[alternative HTML version deleted]]
______________________________________________
R-help@r-project.org mailing list
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@r-project.org mailing list
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.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic