[R] [EXT] Calculating the total change in shareprice over a time periond
e-mail ma015k3113
m@015k3113 @end|ng |rom b|ueyonder@co@uk
Thu Apr 1 17:10:13 CEST 2021
Dear David, thanks so much for your time and suggestion. It has worked now.
Kind regards
Ahson
> On 31 March 2021 at 19:17 David K Stevens <david.stevens using usu.edu> wrote:
>
>
> Mr. Blueyonder,
>
> There are a number of problems with this.
>
> 1) is the data below really in a data frame? I coerced your table into a
> data frame, guessing at the structure and when I print out the 1st three
> rows I get an alignment into proper columns
>
> COMPANY_NUMBER COMPANY_NAME CITY YEAR_END_DATE
> CLOSE_SHARE_PRICE
> 1 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY
> (THE)Egham 30/09/2005 NA
> 2 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY
> (THE)Egham 30/09/2006 NA
> 3 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY
> (THE)Egham 30/09/2007 9.65
>
> I'd guess that your PLC is actually a 1 column data frame based on how
> you present it. Because what you gave is so small, I just added commas
> where they seemed suitable and used
>
> PLC <- read.csv(file='clipboard',header=T,stringsAsFactors = T)
>
> to create the data frame above. It's likely that your actual problem is
> much larger so I'd export the data as a CSV file, and read it into R in
> a similar way using
>
> PLC <- read.csv(file='myfile.csv',header=T,stringsAsFactors = T)
>
> 2) Your code is incorrect as is for two reasons. a) for your approach to
> work, you'll need to create an empty column CH_SH_PRICE before running
> the loop, because your loop is trying to place data into a non-existent
> column b) the code PLC$CH_SH_PRICE(i+1) has to use square brackets,
> otherwise R thinks PCL$CH_SH_PRICE is a function rather than a reference
> to column element i+1 as in PLC$CH_SH_PRICE[i+1]
>
> Also, the functionisTRUE is actually the following
>
> function (x)
> is.logical(x) && length(x) == 1L && !is.na(x) && x
>
> Is this really what you want to do, rather than just checking the
> company number, as inPLC[i,1] == PLC[i+1,1]?
>
> Assuming (tentatively) I guessed right, here's what I got
>
> COMPANY_NUMBER COMPANY_NAME CITY
> YEAR_END_DATE CLOSE_SHARE_PRICE CH_SH_PRICE
> 1 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham
> 30/09/2005 NA NA
> 2 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham
> 30/09/2006 NA NA
> 3 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham
> 30/09/2007 9.65 NA
> 4 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham
> 30/09/2008 6.55 -3.10
>
> Good luck.
>
> David Stevens
>
> On 3/31/2021 11:04 AM, e-mail ma015k3113 via R-help wrote:
> > Dear All, I have a data frame which is structured as follows:
> >
> >
> > COMPANY_NUMBER COMPANY_NAME CITY YEAR_END_DATE CLOSE_SHARE_PRICE
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2005 NA
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2006 NA
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2007 9.65
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2008 6.55
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2009 6.55
> > 22705 CARDIFF PROPERTY PUBLIC LIMITED COMPANY (THE)Egham 30/09/2010 7.5
> > 10395804 TOC PROPERTY BACKED LENDING TRUST PLC Newcastle Upon Tyne 30/11/2016 NA
> > 10395804 TOC PROPERTY BACKED LENDING TRUST PLC Newcastle Upon Tyne 30/11/2017 1.04
> > 10395804 TOC PROPERTY BACKED LENDING TRUST PLC Newcastle Upon Tyne 30/11/2018 1.04
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2000 NA
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2001 NA
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2003 NA
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2004 NA
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2005 NA
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2006 1.09
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2007 1.17
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2008 1.24
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2009 0.9
> > SC192761 MARTIN CURRIE GLOBAL PORTFOLIO TRUST PLC Edinburgh 31/01/2010 1.14
> >
> >
> >
> > I am trying to calculate the total change in share price like for CARDIFF PROPERTY PUBLIC LIMITED COMPANY the total change
> >
> > between 2005 and 2006 is NA and for 2006 and 2007 it is NA for 2007 and 2008 it is -3.1 and 2008 and 2009 it is 0 and 2009 and 2010 it is +.95.
> >
> >
> > I am trying to achieve this via he following code:
> >
> > for (i in 1:(nrow(PLC)-1))
> > if (isTRUE (PLC[i, 1] == PLC[i + 1, 1]))
> > {
> > PLC$CH_SH_PRICE(i+1) = (PLC$CLOSE_SHARE_PRICE[i+1] -
> > PLC$CLOSE_SHARE_PRICE[i])
> > }
> >
> >
> > I get the following error
> >
> >
> > Error in 1:(nrow(PLC) - 1) : argument of length 0
> >
> >
> > Can you kindly suggest any solution to this issue?
> >
> >
> > Thanks in advance.
> > [[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.
> > CAUTION: This email originated from outside of USU. If this appears to be a USU employee, beware of impersonators. Do not click links, reply, download images, or open attachments unless you verify the sender’s identity and know the content is safe.
> >
> --
> David K Stevens, P.E., Ph.D.
> Professor, Environmental Engineering
> Civil and Environmental Engineering
> Utah Water Research Laboratory
> 8200 Old Main Hill
> Logan, UT 84322-8200
> 435 797 3229 - voice
> 435 797 1363 - fax
> david.stevens using usu.edu
>
> ______________________________________________
> 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.
More information about the R-help
mailing list