2014-01-09 45 views
0

我想知道是否可以读取data.frame(下面的“a”),而不将“因素”指定为属性。我希望字符/字符串作为因子和数字作为数字(而不必调用每一列)。转换为char后data.frame中的列属性。矩阵(转置)。

x <- matrix(letters[1:9],3) 
x<-rbind(x,c(0,2,2)) 
rownames(x) <- c('c1','c2','c3','c4') 
y <- data.frame(x) 
z <- t(y) 
a <- data.frame(z)  
str(a) 

回答

0

添加条件stringsAsFactors=FALSE每次你创建一个data.frame:

y <- data.frame(x,stringsAsFactors=FALSE) 

a <- data.frame(z,stringsAsFactors=FALSE) 

变化一回数字的4列:

> a[,4]=as.numeric(a[,4]) 

> a 
    c1 c2 c3 c4 
X1 a b c 0 
X2 d e f 2 
X3 g h i 2 

> str(a) 
'data.frame': 3 obs. of 4 variables: 
$ c1: chr "a" "d" "g" 
$ c2: chr "b" "e" "h" 
$ c3: chr "c" "f" "i" 
$ c4: num 0 2 2 
+0

是否有相当于参数“stringsAsfactors “数字?我有很多不同长度的数据集,谢谢。 – user3166363