首页 > 解决方案 > 运行一个函数并将其计算值和输入值存储在新数据框中

问题描述

我需要运行一个函数,该函数将使用某个值执行计算,将计算的值存储在新数据框中,以及用于执行该计算的值。

mar <- seq(18,40, by = 1)
ma <- 1+mar

输出应该是一个数据框

dataframe
mar   ma
18    19
19    20

标签: r

解决方案


这有帮助吗?

original_dataframe <- data.frame(mar = 18:40)

new_dataframe <- within(data = original_dataframe,
                        expr =
                          {
                            ma <- (1 + mar)
                          })

new_dataframe
#>    mar ma
#> 1   18 19
#> 2   19 20
#> 3   20 21
#> 4   21 22
#> 5   22 23
#> 6   23 24
#> 7   24 25
#> 8   25 26
#> 9   26 27
#> 10  27 28
#> 11  28 29
#> 12  29 30
#> 13  30 31
#> 14  31 32
#> 15  32 33
#> 16  33 34
#> 17  34 35
#> 18  35 36
#> 19  36 37
#> 20  37 38
#> 21  38 39
#> 22  39 40
#> 23  40 41

reprex 包(v0.3.0)于 2019 年 9 月 7 日创建

如果你想使用dplyr

library(dplyr)

original_dataframe <- data.frame(mar = 18:40)

new_dataframe <- original_dataframe %>% mutate(ma = (1 + mar))

new_dataframe

推荐阅读