【发布时间】:2023-03-09 21:38:01
【问题描述】:
我需要为数字 1:N 的阶乘函数运行 system.time 循环,并将结果存储为具有 2 列编号和用户时间的数据帧,以便使用递归和循环监控阶乘函数实现的性能。 我能够在使用 for 循环时运行 system.time(),但不能只提取 user.self 的值。
例如
i<-system.time(fact(1000))
这给了我输出的东西
user system elapsed
0.006 0.000 0.006
但是,我只想提取数值 0.006 并将其作为列值放入我的数据框中,并带有相应的数字 N(在本例中为 1000)。
进一步提取会为我提供用户数据以及字符串“user.self”,但我只想要 0.006。
> i[1]
user.self
0.006
数据框最终将如下所示
N recursiveTime loopTime
1 1000 0.06 0.003
2 1100 0.06 0.004
3 1200 0.07 0.004
【问题讨论】:
-
什么是
loopTime列? -
需要使用 1.recursion 和 2.For 循环来实现阶乘函数。第一列“recursiveTime”将存储使用递归计算阶乘时从 system.time() 提取的用户时间,第二列“loopTime”将存储使用 for 循环计算阶乘时从 system.time() 提取的用户时间。
标签: r