我意识到在这个主板上有关于B-Splines主题的帖子,但实际上这让我更加困惑,所以我觉得有人可能会帮助我.
我已经模拟了从0到1的x值的数据.我想在我的数据中拟合一个三次样条(degree = 3),结点为0,0.1,0.2,...,0.9,1.我也喜欢使用B样条基和OLS进行参数估计(我不是在寻找惩罚样条).
我想我需要包装中的bs功能,spline但我不太确定,我也不知道究竟要喂它.
我还想绘制得到的多项式样条曲线.
谢谢!
我正在尝试模拟一些数据(x1和x2 - 我的解释变量),使用指定函数+随机噪声计算y并绘制结果观察值和真实回归曲面.这是我到目前为止所拥有的:
set.seed(1)
library(rgl)
# Simulate some data
x1 <- runif(50)
x2 <- runif(50)
y <- sin(x1)*x2+x1*x2 + rnorm(50, sd=0.3)
# 3D scatterplot of observations
plot3d(x1,x2,y, type="p", col="red", xlab="X1", ylab="X2", zlab="Y", site=5, lwd=15)
Run Code Online (Sandbox Code Playgroud)
现在我不确定如何添加"真实"回归平面.我基本上寻找像curve()这样的东西,我可以插入我的(真实)模型公式.
谢谢!
我试图获得矢量的成对产品
a = c(1,2,3,4)
Run Code Online (Sandbox Code Playgroud)
我想要得到的是
2,3,4,6,8,12(按此顺序).
我尝试过使用外部:
outer(1:4,2:4)
Run Code Online (Sandbox Code Playgroud)
这给了我一个矩阵,其中包括我想要的产品,但我不知道如何从矩阵中提取它们的方式可以扩展到更高维度的矢量.
谢谢!
我使用拟似然方法 ( ) 将 GLM 拟合到一些数据family=quasi(...)。
我想p在方差规范中使用一个变量,如下所示:
family = quasi(link=log, variance=mu^p)
Run Code Online (Sandbox Code Playgroud)
然而这不起作用(它不再识别mu)。
有什么方法可以让 R 在求值之前将 p 的值插入表达式中,这样我就可以使用p而不是数字?
这是一个不起作用的示例:
set.seed(1)
x <- runif(100)
y <- x^2+2*x+sin(2*pi*x) + rnorm(100)
fitModel <- function(x,y, p) {
model <- glm(y~x, family=quasi(link=log, variance=mu^p))
return(model)
}
fitModel(x,y,2)
Run Code Online (Sandbox Code Playgroud)
谢谢!
我在R中有一个10x10的矩阵,称为run_off。我想将此矩阵转换为包含矩阵条目的数据框(顺序并不重要,尽管我更喜欢按行填充)以及条目的行数和列数在数据框中显示为单独的列,例如,元素run_off[2,3]在数据框中包含一行,其中包含3列,第一列包含元素本身,第二列包含2,第三列包含3。
这是我到目前为止的内容:
run_off <- matrix(data = c(45630, 23350, 2924, 1798, 2007, 1204, 1298, 563, 777, 621,
53025, 26466, 2829, 1748, 732, 1424, 399, 537, 340, NA,
67318, 42333, -1854, 3178, 3045, 3281, 2909, 2613, NA, NA,
93489, 37473, 7431, 6648, 4207, 5762, 1890, NA, NA, NA,
80517, 33061, 6863, 4328, 4003, 2350, NA, NA, NA, NA,
68690, 33931, 5645, 6178, 3479, NA, NA, NA, NA, NA,
63091, 32198, 8938, 6879, NA, NA, NA, NA, NA, NA, …Run Code Online (Sandbox Code Playgroud) 我persp()在R里面的函数有一个非常奇怪的问题.我正在使用split.screen()函数来安排三个图.我在下面制作了一个MWE:
f <- function(x,y) {
return(x*y)
}
u <- seq(0,5, by = 0.1)
v <- seq(0,5, by = 0.1)
z <- outer(u, v, f)
persp(u,v,z, ticktype="detailed", col = rgb(0.2,0.6,1))
pdf("~/Desktop/test.pdf", width = 10, height = 10) # adjust path as necessary
split.screen( figs = c( 2, 1 ) )
split.screen( figs = c( 1, 2 ) )
screen(2)
persp(u,v,z, ticktype="detailed", col = rgb(0.2,0.6,1))
screen(3, new = FALSE)
persp(u,v,z, ticktype="detailed", col = rgb(0.2,0.6,1))
screen(4, new = FALSE) …Run Code Online (Sandbox Code Playgroud) r ×6
3d ×2
plot ×2
dataframe ×1
expression ×1
glm ×1
matrix ×1
outer-join ×1
product ×1
regression ×1
rgl ×1
smoothing ×1
spline ×1