gpt4 book ai didi

r - 在 R 中拆分数字

转载 作者:行者123 更新时间:2023-12-04 09:23:16 26 4
gpt4 key购买 nike

R我有一个号码,比如说 1293828893 ,称为 x .

我想拆分这个数字以删除中间的 4 位数字 3828并返回,伪代码如下:

splitnum <- function(number){
#check number is 10 digits
if(nchar(number) != 10){
stop("number not of right size");
}
middlebits <- middle 4 digits of number
return(middlebits);
}

这是一个非常简单的问题,但我发现的唯一解决方案适用于字符串,而不是数字字符串。

如果感兴趣,我正在尝试在 R 中创建一个实现的 Middle-square method ,但这一步特别棘手。

最佳答案

您可以使用 substr() .查看其帮助页面 ?substr .在您的职能中,我会这样做:

splitnum <- function(number){
#check number is 10 digits
stopifnot(nchar(number) == 10)
as.numeric(substr(number, start = 4, stop = 7))
}

这使:
> splitnum(1293828893)
[1] 3828

删除 as.numeric(....)在最后一行换行,您希望将数字作为字符串。

关于r - 在 R 中拆分数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12807217/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com