[R] Looping through data error
e-mail ma015k3113
m@015k3113 @end|ng |rom b|ueyonder@co@uk
Tue Apr 13 18:11:21 CEST 2021
Jim, thanks for taking the time to look into this. Yes, these if else statements are so confusing.
I tried your amended scode and it does not work. The error are as follows:
Error: unexpected '}' in " }"
> NUMBER_OF_SHARES[i] = 100 / is.na(CLOSE_SHARE_PRICE[i])
> }
Error: unexpected '}' in " }"
> }
Error: unexpected '}' in " }"
> }
Error: unexpected '}' in "}"
>
I have spent so much time on this-hopefully I will come to grips sooner or later. In the mean time any further suggestion?
Kind regards
Ahson
> On 13 April 2021 at 14:29 jim holtman <jholtman using gmail.com> wrote:
>
> Your code was formatted incorrectly. There is always a problem with the 'else' statement after an 'if' since in R there is no semicolon to mark the end of a line. Here might be a better format for your code. I would recommend the liberal use of "{}"s when using 'if/else'
>
>
>
> i <- 0
>
> for (i in 1:(nrow(PLC_Return) - 1)) {
> if (i == 1) {
> NUMBER_OF_SHARES[i] = 100 /http://is.na (CLOSE_SHARE_PRICE[i])
> } else {
> if (http://is.na (PLC_Return[i, 1]) ==http://is.na (PLC_Return[i + 1, 1]) {
> NUMBER_OF_SHARES[i] = 0
> } else {
> NUMBER_OF_SHARES[i] = 100 /http://is.na (CLOSE_SHARE_PRICE[i])
> }
> }
> }
>
>
> Jim Holtman
> Data Munger Guru
>
> What is the problem that you are trying to solve?
> Tell me what you want to do, not how you want to do it.
>
>
> On Tue, Apr 13, 2021 at 5:51 AM e-mail ma015k3113 via R-help < r-help using r-project.org mailto:r-help using r-project.org > wrote:
>
> > > Dear All,I have a dataframe with 4 variables and I am trying to calculate how many shares can be purchased with £100 in the first year when the company was listed
> >
> > The data looks like:
> >
> > COMPANY_NUMBER YEAR_END_DATE CLOSE_SHARE_PRICE NUMBER_OF_SHARES
> > 22705 30/09/2002 NA 0
> > 22705 30/09/2004 NA 0
> > 22705 30/09/2005 6.55 0
> > 22705 30/09/2006 7.5 0
> > 22705 30/09/2007 9.65 0
> > 22705 30/09/2008 6.55 0
> > 1091347 31/01/2010 8.14 0
> > 1091347 31/01/2011 11.38 0
> > 11356069 30/06/2019 1.09 0
> > SC192761 31/01/2000 NA 0
> > SC192761 31/01/2001 NA 0
> > SC192761 31/01/2002 NA 0
> > SC192761 31/01/2004 NA 0
> > SC192761 31/01/2005 NA 0
> > SC192761 31/01/2006 1.09 0
> > SC192761 31/01/2008 1.24 0
> > SC192761 31/01/2009 0.9 0
> > SC192761 31/01/2010 1.14 0
> > SC192761 31/01/2011 1.25 0
> > SC192761 31/01/2012 1.29 0
> >
> >
> > The code I have written is
> >
> > i <- 0
> >
> > for (i in 1:(nrow(PLC_Return)-1))
> > if (i == 1)
> > {
> > NUMBER_OF_SHARES[i] = 100/http://is.na (CLOSE_SHARE_PRICE[i])
> > } else if
> > (http://is.na (PLC_Return[i, 1]) ==http://is.na (PLC_Return[i + 1, 1])
> > {
> > NUMBER_OF_SHARES[i]=0
> > } else
> > {
> > NUMBER_OF_SHARES[i] = 100/http://is.na (CLOSE_SHARE_PRICE[i])
> > }
> >
> >
> > The error I get is Error: unexpected 'else' in:
> >
> > " NUMBER_OF_SHARES[i] = 0
> > } else"
> > > {NUMBER_OF_SHARES[i] = 100/http://is.na (CLOSE_SHARE_PRICE[i])}
> > >
> > > }
> > Error: unexpected '}' in "}"
> >
> >
> > Don't know how to fix it-any help will be appreciated.
> >
> >
> > Kind regards
> >
> >
> > Ahson
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help using r-project.org mailto: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