2014-08-29 47 views
2

我似乎無法添加兩列R.我怎麼可以添加到列中的R

當我嘗試

dat$V1 + dat$V2 

我得到

[1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA 
Warning message: 
In Ops.factor(dat$V1, dat$V2) : + not meaningful for factors 

很多其他的問題建議照我所做的那樣做,但正如你所看到的,這對我不起作用。問題是什麼?

+0

您應該調查爲什麼列因素,而不是數值作爲你的期望。最有可能的是,這在數據導入期間發生。 – Roland 2014-08-29 11:10:03

回答

4

嘗試將您的因子列轉換爲數字:如果V1V2是前兩列。

dat[,1:2] <- lapply(dat[,1:2], function(x) as.numeric(as.character(x))) 

dat$V1 +dat$V2 

例如:

dat <- data.frame(V1= factor(1:5), V2= factor(6:10)) 
dat$V1+dat$V2 
#[1] NA NA NA NA NA 
#Warning message: 
#In Ops.factor(dat$V1, dat$V2) : + not meaningful for factors 

dat[,1:2] <- lapply(dat[,1:2], function(x) as.numeric(as.character(x))) 

dat$V1 +dat$V2 
#[1] 7 9 11 13 15 
+0

as.numeric - 就是那個!謝謝 – brucezepplin 2014-08-29 10:48:36

相關問題