簡體   English   中英

R中的log2:如何計算指數和尾數

[英]log2 in R: How to calculate the exponent and mantissa

有誰知道如何在R中執行相同的MATLAB函數[F,E] = log2(X)

[F,E] = log2(X)返回數組F和E,使得X = F * 2 ^ E。 F中的值通常在0.5 <= abs(F)<1的范圍內。

參見https://www.mathworks.com/help/matlab/ref/log2.html

例如在MATLAB中,

[F,E] = log2(15)

F =

 0.9375 

E =

  4 

從而,

F * 2 ^ E = 15

您需要手動計算它們。 我認為沒有內置函數可以提取它們。 嘗試這個:

x<-15
E <- ifelse(x == 0, 0, floor(log2(abs(x)))+1 )
F<-x/2^E

編輯:對於x == 0進行更改。

我不確定您要問的是什么,但是log2給您R的對數以2為底。例如

log2(2);
#[1] 1

log2(2^10)
#[1] 10

2^(log2(10))
#[1] 10

有關詳細信息,請參見?log

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM