程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了只将值写入 R 数据帧,而不是每个包含一个元素的列表大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决只将值写入 R 数据帧,而不是每个包含一个元素的列表?

开发过程中遇到只将值写入 R 数据帧,而不是每个包含一个元素的列表的问题如何解决?下面主要结合日常开发的经验,给出你关于只将值写入 R 数据帧,而不是每个包含一个元素的列表的解决方法建议,希望对你解决只将值写入 R 数据帧,而不是每个包含一个元素的列表有所启发或帮助;

我正在尝试运行以下代码来计算不同自由度值列表的训练和测试 mses(来自 mses 数据帧)。逻辑和计算工作正常,只是写入数据框列的值是每个列表,每个元素都有一个元素。如何将值直接写入数据帧而不是列表。

library(tIDyversE)
library(tIDymodels)
mses <- data.frame(dof = c(4,5,6,7,8,9,10,11,12)) %>%
  mutate(Train_mse = 0,test_R_147_11845@se = 0)

for(row in 1:nrow(mses)) {
    data_prep <- data_Train %>%
      recipe(y~X) %>%
      step_ns(x,deg_free = mses[row,]$dof) %>%
      prep()
    Train_data_baked <- bake(data_prep,new_data = NulL)
    test_data_baked <- bake(data_prep,new_data = test_data)
    fit <- lm_mod %>% 
      fit(y ~ .,data = Train_data_baked)
    data_Train_pred <- augment(fit,Train_data_baked)
    data_test_pred <- augment(fit,test_data_baked)
    mses[row,]$Train_mse <- rmse(data_Train_pred,truth = y,estimate = .pred) %>% pull(.estimatE)
    mses[row,]$test_R_147_11845@se <- rmse(data_test_pred,estimate = .pred) %>% pull(.estimatE)
}

mses

dof Train_mse test_R_147_11845@se
5   7.86411 7.417473
6   7.799764 7.469411
7   7.774885 7.443789
8   7.652001 7.377031
9   7.224786 6.844998
10  4.369653 4.189723
11  5.614708 5.741194
12  4.388925 4.146042
13  4.137634 3.746277

解决方法

在将 unlist(yourList) 写入数据框之前尝试使用它。

大佬总结

以上是大佬教程为你收集整理的只将值写入 R 数据帧,而不是每个包含一个元素的列表全部内容,希望文章能够帮你解决只将值写入 R 数据帧,而不是每个包含一个元素的列表所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:数据帧