[R] receiving Error: unexpected '='
jim holtman
jholtman at gmail.com
Mon Feb 29 10:43:06 CET 2016
Your syntax on the 'if' is wrong; you need 'if (..expression..)' -- you are
missing the parentheses. Also read up on functions; any changes are local
-- you cannot change values outside the environment. You should just
return values. You also probably need to pass in the dataframe you want to
make changes to.
Probably what you want is:
new_week <- function(df, x, y){
# x & y are character strings with the names of the columns to
check/change
df[[x]][is.na(df[[x]])] <- df[[y]][is.na(df[[x]])]
df # return value
}
# then call with assignment of the result
df <- new_week(df, 'wk5', 'wk4')
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 Sun, Feb 28, 2016 at 6:08 PM, KMNanus <kmnanus at gmail.com> wrote:
> I’m a newbie and trying to execute this simple function in order to change
> wk 5 NA’s to wk 4 values for the dataset (ken) below. Can someone pls tell
> me what I’m doing wrong? The error msg is “"rror: unexpected input in
> "new_week <- function(x,y) { “
> Even the “E” is missing in the word “Error."
>
> new_week <- function(x,y) {
> if x[is.na(x)] {
> x = y
> }
> }
>
> patient wk1 wk2 wk3 wk4 wk5
> A 1 2 4 6 8
> B 2 3 NA 3 17
> C 3 4 5 11 NA
> D 4 NA 6 12 11
> E 5 6 7 NA 21
> F 6 7 8 3 NA
> G 7 8 9 7 NA
>
>
>
> Ken
> kmnanus at gmail.com
> 914-450-0816 (tel)
> 347-730-4813 (fax)
>
>
>
> ______________________________________________
> 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]]
More information about the R-help
mailing list