当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R recipes step_spline_natural 自然样条


step_spline_natural() 创建创建自然样条特征的配方步骤的规范。

用法

step_spline_natural(
  recipe,
  ...,
  role = "predictor",
  trained = FALSE,
  deg_free = 10,
  complete_set = FALSE,
  options = NULL,
  keep_original_cols = FALSE,
  results = NULL,
  skip = FALSE,
  id = rand_id("spline_natural")
)

参数

recipe

一个菜谱对象。该步骤将添加到此配方的操作序列中。

...

一个或多个选择器函数用于为此步骤选择变量。有关更多详细信息,请参阅selections()

role

对于此步骤创建的模型项,应为其分配什么分析角色?默认情况下,此步骤根据原始变量创建的新列将用作模型中的预测变量。

trained

指示预处理数量是否已估计的逻辑。

deg_free

自然样条的自由度。随着自然样条自由度的增加,可以生成更灵活和复杂的曲线。这一步需要至少两个自由度。

complete_set

如果TRUE,将返回完整的基础矩阵。否则,第一个基础将从输出中排除。这映射到intercept相应函数的参数样条2包并具有相同的默认值。

options

splines2::mSpline() 的选项列表,不应包含 xdfintercept

keep_original_cols

将原始变量保留在输出中的逻辑。默认为 FALSE

results

训练步骤后创建的对象列表。

skip

一个合乎逻辑的。当bake() 烘焙食谱时是否应该跳过此步骤?虽然所有操作都是在 prep() 运行时烘焙的,但某些操作可能无法对新数据进行(例如处理结果变量)。使用skip = TRUE时应小心,因为它可能会影响后续操作的计算。

id

该步骤特有的字符串,用于标识它。

具有类 "step_spline_natural""step" 的对象。

细节

样条变换采用数字列并创建多个特征,当在模型中使用这些特征时,可以估计列和某些结果之间的非线性趋势。自由度决定了向数据添加多少新特征。

该样条函数是分段三次多项式函数。

如果所选列的样条扩展失败,该步骤将删除该列的结果(但将保留原始数据)。使用tidy() 方法确定使用了哪些列。

整理

当您tidy()此步骤时,将返回带有列terms(将受影响的列)的tibble。

调整参数

此步骤有 1 个调整参数:

  • deg_free:样条曲线自由度(类型:整数,默认值:10)

箱重

底层操作不允许使用案例权重。

也可以看看

例子

library(tidyr)
library(dplyr)

library(ggplot2)
data(ames, package = "modeldata")

spline_rec <- recipe(Sale_Price ~ Longitude, data = ames) %>%
  step_spline_natural(Longitude, deg_free = 6, keep_original_cols = TRUE) %>%
  prep()

tidy(spline_rec, number = 1)
#> # A tibble: 1 × 2
#>   terms     id                  
#>   <chr>     <chr>               
#> 1 Longitude spline_natural_g2f22

# Show where each feature is active
spline_rec %>%
  bake(new_data =  NULL,-Sale_Price) %>%
  pivot_longer(c(starts_with("Longitude_")), names_to = "feature", values_to = "value") %>%
  mutate(feature = gsub("Longitude_", "feature ", feature)) %>%
  filter(value > 0) %>%
  ggplot(aes(x = Longitude, y = value)) +
  geom_line() +
  facet_wrap(~ feature)

源代码:R/spline_natural.R

相关用法


注:本文由纯净天空筛选整理自Max Kuhn等大神的英文原创作品 Natural Splines。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。