我没有收到任何错误:
df <- data.frame(id= c(1,2,3,4), Transfer2012 = c(200,0,0,300), Salary2012 = c(0,300,0,200), Transfer2013 = c(200,250,200,300),
Salary2013 = c(0,0,0,0), Transfer2014 = c(200,0,0,200), Salary2014 = c(0,300,0,0))
id Transfer2012 Salary2012 Transfer2013 Salary2013 Transfer2014 Salary2014
1 1 200 0 200 0 200 0
2 2 0 300 250 0 0 300
3 3 0 0 200 0 0 0
4 4 300 200 300 0 200 0
df$transfershare <- (rowSums(df[,c(2,4,6)])/rowSums(df[,c(2:7)]))*100
id Transfer2012 Salary2012 Transfer2013 Salary2013 Transfer2014 Salary2014 transfershare
1 1 200 0 200 0 200 0 100.00000
2 2 0 300 250 0 0 300 29.41176
3 3 0 0 200 0 0 0 100.00000
4 4 300 200 300 0 200 0 80.00000
您是否确认您的变量是数字的?
str(df)
'data.frame': 4 obs. of 7 variables:
$ id : num 1 2 3 4
$ Transfer2012: num 200 0 0 300
$ Salary2012 : num 0 300 0 200
$ Transfer2013: num 200 250 200 300
$ Salary2013 : num 0 0 0 0
$ Transfer2014: num 200 0 0 200
$ Salary2014 : num 0 300 0 0