gpt4 book ai didi

r - 在 R 中,使用科学记数法 10^ 而不是 e+

转载 作者:行者123 更新时间:2023-12-04 18:39:23 24 4
gpt4 key购买 nike

可能有人问过这个问题,但我没有设法找到一个简单的解决方案。有没有办法将数字转换为其科学记数法,但以 10^ 的形式而不是默认的 e+ 或 E+ 的形式?所以 1000 会变成 1*10^3 而不是 1e+3。谢谢!

最佳答案

要打印数字,您可以将其视为字符串并使用 sub重新格式化它:

changeSciNot <- function(n) {
output <- format(n, scientific = TRUE) #Transforms the number into scientific notation even if small
output <- sub("e", "*10^", output) #Replace e with 10^
output <- sub("\\+0?", "", output) #Remove + symbol and leading zeros on expoent, if > 1
output <- sub("-0?", "-", output) #Leaves - symbol but removes leading zeros on expoent, if < 1
output
}

一些例子:
> changeSciNot(5)
[1] "5*10^0"
> changeSciNot(-5)
[1] "-5*10^0"
> changeSciNot(1e10)
[1] "1*10^10"
> changeSciNot(1e-10)
[1] "1*10^-10"

关于r - 在 R 中,使用科学记数法 10^ 而不是 e+,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29785555/

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