newdata和几个不同级别的因素

时间:2013-11-28 17:56:38

标签: r dataframe r-factor

我需要在R中使用data.frame函数创建newdata(这个newdata然后与predict-function一起使用)。我有两个因素要包含在newdata中,但它们有不同的级别。因素SSD有3个级别,因子年份有4个级别。我使用了以下命令:

newdata <- data.frame(
                 a = rep(mean(Data$a), 100),
                 b = rep(seq(from = min(Data$b), to = max(Data$b),
                         length.out = 100)),
                 c = rep(mean(Data$c), 100),
                 d = rep(mean(Data$d), 100),
                 SSD = factor(rep(1:3, each = 100), 
                              levels = 1:3, labels = levels(Data$SSD)),
                 Year = factor(rep(1:4, each = 100), 
                               levels = 1:4, labels = levels(Data$Year)))

但是,我收到以下错误消息:

Error in data.frame(a = rep(mean(Data$a), 100), b = rep(seq(from = min(Data$b),: 
arguments imply differing number of rows: 100, 300, 400

我的问题是:如何创建具有不同级别数的两个因素的新数据?

1 个答案:

答案 0 :(得分:0)

我使用gl创建因子:

data.frame(SSD =gl(3,100/3),
           Year=gl(4,100/4))