[R] create

Val
Sun, 14 Apr 2019 02:53:54 -0000

Hi All,
I have a data frame  with several  columns  and I want to  create
another  column  by using  the values of the other columns.  My
problem is that some the row values  for some columns  have missing
values  and I could not get  the result I waned .

Here is the sample of my data and my attempt.

vdat<-read.table(text="obs, Year, x1, x2, x3
1,  2001, 25 ,10, 10
2,  2001,  ,  15, 25
3,  2001,  50, 10,
4,  2001,  20, , 60",sep=",",header=TRUE,stringsAsFactors=F)
vdat$xy <- 0
vdat$xy <- 2*(vdat$x1) + 5*(vdat$x2) + 3*(vdat$x3)
vdat

     obs Year x1 x2 x3  xy
1   1 2001 25 10 10 130
2   2 2001 NA 15 25  NA
3   3 2001 50 10 NA  NA
4   4 2001 20 NA 60  NA

The desired result si this,

   obs Year x1 x2 x3   xy
1   1 2001 25 10 10   130
2   2 2001 NA 15 25  150
3   3 2001 50 10 NA  150
4   4 2001 20 NA 60  220

How do I get my desired result?
Thank you