这可能是一个非常愚蠢的问题,但我是大R新手和。我有一个矩阵,我需要框架。有没有更好的方法来做到这一点,除了:
data1 = data.frame(X0 = Ytrain, X1 = Xtrain[,2], X2 = Xtrain[,3], ... , X50 = Xtrain[,51])
我能够在Emacs中产生这种怪异,但现在我需要创建R函数来实现这一点。任何帮助都会受到极大关注。
托马斯
答案 0 :(得分:3)
应该这样做:
# Assuming you used all the columns of `Xtrain` but the first
NEW.DF <- data.frame(Ytrain, Xtrain[, -1])
# If you didn't use all the cols of `xtrain`:
# NEW.DF <- data.frame(Ytrain, Xtrain[, 2:51])
names(NEW.DF) <- paste0("X", 0:(ncol(NEW.DF)-1))
答案 1 :(得分:2)
data1 <- cbind(data.frame(X0 = Ytrain),data.frame(Xtrain[, -1]))
默认情况下,在转换为X1
时,Matrix列的名称为XN
... data.frame
,除非它们已经命名。