R:阶乘的尾随零的数量

问题描述 投票:2回答:2

我正在尝试计算给定数字(例如,)的阶乘中尾随零的数量>

  • [6!=720,具有1尾随零]
  • [10!=3628800,具有2尾随零]
  • [我的问题,我有一个像df <- data.frame(n=1:50)的数据框,如何添加另一列,该列给出尾随零的数量,例如]

    n trail0s
1   1       0
2   2       0
3   3       0
4   4       0
5   5       1
6   6       1
7   7       1
8   8       1
9   9       1
10 10       2

...

我知道R中的factorial是要计算阶乘,但我不知道如何计算尾随零。任何帮助,将不胜感激!

我正在尝试计算给定数字的阶乘中的尾随零的数量,例如6!= 720,它具有1个尾随零10!= 3628800,其具有2个尾随零我的问题,我有一个数据。 ..

r factorial
2个回答
3
投票

我认为您应该先计算factorial的一些数学属性,然后再计算尾随零的数目,请参阅https://mathworld.wolfram.com/Factorial.html


0
投票
> library(stringi)
> x1<- c(1:7)
> x2 <- c(10,20,200,220, 50,300,7000)
> df<- data.frame(x1,x2)
> df$x0trail <- stri_count(df$x2, regex="0") 
> df
  x1   x2 x0trail
1  1   10       1
2  2   20       1
3  3  200       2
4  4  220       1
5  5   50       1
6  6  300       2
7  7 7000       3
© www.soinside.com 2019 - 2024. All rights reserved.