R 函数,用于从回归中创建数据帧
我想写一个函数,返回长度为N的数据帧,如下所示R 函数,用于从回归中创建数据帧,r,function,R,Function,我想写一个函数,返回长度为N的数据帧,如下所示 y x1 x2 14.84 -1.62 -0.39 9.72 -0.15 -1.83 9.40 1.08 -0.76 ... 13.36 0.26 0.49 我是个初学者,所以如果有人能让我回到正轨,我会很高兴的。我有以下代码,但我不知道如何将我的x1、x2和y1安全地放入这样的数据帧中。 我的代码: 数据帧(alpha、beta1、beta2、sigma、n){ x1如注释中所述,您需要首先将函数定义分配给DataFrame。而
y x1 x2
14.84 -1.62 -0.39
9.72 -0.15 -1.83
9.40 1.08 -0.76
...
13.36 0.26 0.49
我是个初学者,所以如果有人能让我回到正轨,我会很高兴的。我有以下代码,但我不知道如何将我的x1
、x2
和y1
安全地放入这样的数据帧中。
我的代码:
数据帧(alpha、beta1、beta2、sigma、n){
x1如注释中所述,您需要首先将函数定义分配给DataFrame
。而且您的As.data.frame()
语句为空
DataFrame <- function(alpha, beta1, beta2, sigma, n){
x1 <- runif(n, min = -10, max = 10)
x2 <- runif(n, min = -10, max = 10)
y1 <- as.vector(alpha + x1*beta1 + x2*beta2)
dataframe <- cbind.data.frame(y = y1, x1 = x1, x2 = x2)
return(dataframe)
}
DataFrame差不多了DataFrame你应该使用data.frame
而不是cbind
。我同意罗兰的建议。cbind
不会创建一个data.frame。在这种情况下,这并不重要,因为所有内容都是数字,但仍然。。。
DataFrame <- function(alpha, beta1, beta2, sigma, n){
x1 <- runif(n, min = -10, max = 10)
x2 <- runif(n, min = -10, max = 10)
y1 <- as.vector(alpha + x1*beta1 + x2*beta2)
dataframe <- cbind.data.frame(y = y1, x1 = x1, x2 = x2)
return(dataframe)
}