返回R语言pbs包函数列表
功能作用概述:
生成多项式样条的周期B样条基矩阵。
语法用法:
pbs(x, df = NULL, knots = NULL, = 3, = FALSE,
.knots = range(x), = TRUE)
参数说明:
x : 预测变量。允许缺少值。
df : 自由度;可以指定“df”而不是“knots”;“pbs()”然后在适当的“x”分位数处选择“df-1”knots(这将忽略缺少的值)。
knots : 定义样条曲线内部节点数必须大于或等于回归。另见’边界.knots’.
: 分段多项式的默认次数是3。
: 如果“TRUE”,则在基中包含截获;默认值为“FALSE”。
.knots : 设定周期B样条基周期的边界点(默认数据范围)。如果“结”和“结”边界.knots,则基参数不依赖于“x”。数据不能扩展到’边界.knots’典型的布尔日结是周期的开始值和结束值。
: 如果为“真”,则生成周期基。默认值为TRUE。这是禁用的。不要使用。
示例实例:
(stats); (); ()
x = seq(1,628)/100
z = rep(seq(1, 314)/100, 2)
pbs(x, df = 5, .knots = c(0, 2*pi))
pbs(x, knots=c(pi/2, pi, pi*3/2), .knots = c(0, 2*pi))
#### of one
y= sin(x) + cos(2*x) +
rnorm(628, 0, 0.1) ## x has a of 2*pi
## df , need to use large df to get a fit.
## May use max to df
( fm1 < – lm(y ~ pbs(x, df = 10, .knots = c(0, 2*pi))) )
plot(x, y, xlab = “x”, ylab = “sin(x)”, pch=”x”, cex=.5)
lines(x, (fm1, data.frame(x=x, z=z)), col=’blue’)
lines(x, sin(x) + cos(2*x), col=’red’)
## knots , at
( fm2 < – lm(y ~ pbs(x, knots=c(pi/2, pi, pi*3/2),
.knots = c(0, 2*pi)))
plot(x, y, xlab = “x”, ylab = “sin(x)”, pch=”x”, cex=.5)
lines(x, (fm2, data.frame(x=x, z=z)), col=’blue’)
lines(x, sin(x) + cos(2*x), col=’red’)
#### of two
x0 = seq(1,628, by=4)/100
z0 = seq(1, 314, by=3)/100
x = rep(x0, each=(z0))
z = rep(z0, (x0))
y = sin(x) + cos(2*z) +
rnorm((x), 0, 0.1) ## x has a of 2*pi and z of pi
( fm3 < – lm(y ~ pbs(x, df = 5, .knots = c(0, 2*pi))+
pbs(z, df = 5, .knots = c(0, pi)))
plot(sin(x) + cos(2*3), (fm3, data.frame(x=x, z=3)))
(sin(x) + cos(2*3)- (fm3, data.frame(x=x, z=3)))
## End(Not run)
发表回复