r - 在 Rstudio 中使用循环的函数
问题描述
我正在创建一个函数,我想用“num_casos”列的数据创建一个新列
suavizar = function(dataset, nombre_columna){
for ( i in 8:nrow(dataset)){
dataset[i, nombre_columna] = sum(dataset[(i-7):(i-1),"num_casos"])/7}
}
suavizar(casos_10_19,"casos_10_19")
#The Output:
fecha num_casos
1 2020-03-02 8
2 2020-03-03 4
3 2020-03-04 3
4 2020-03-05 16
为什么我的函数没有在我的数据框中创建新列?
解决方案
您可以尝试如下功能
suavizar <- function(dataset, nombre_columna){
for ( i in 8:nrow(dataset)){
dataset[i, nombre_columna] <- sum(dataset[(i-7):(i-1),"num_casos"])/7}
}
dataset
}
推荐阅读
- dataset - 如何在我的 Colab 笔记本上下载 kaggle 数据集?
- django - 使用 pytest 和 factory-boy,我如何为非传统类型的对象创建工厂?
- c# - Revit API - C# - 如何在视口上设置视图标题
- c# - 从 SOAP 响应中读取二进制附件数据
- java - Azure 数据工厂中不带冒号的格式化时间 (Java SimpleDateFormat)
- css - 如何为特定材料选择样式
- python - 使用 Pandas 从 API 构建时间序列数据集
- cakephp - 如何将 sql 查询转换为 cakephp 查询并在控制器中使用
- php - 根据 WooCommerce 购物车中的运输类别隐藏 COD 付款方式
- nlp - 如何使用自然语言处理将文本映射到预设的主题列表