2016-10-04 68 views
-1

在R中,爲什麼typeof(Inf)是雙重的? Infinity可以被視爲實數還是隻是一個數字?爲什麼typeof(Inf)是雙重的?

x=1 
xx=0 
y=x/xx 
typeof(y) 

答案是"double"

謝謝你一般

+1

你分兩個雙打。你是否期望算術運算改變類型? – Roland

+0

@Roland Err,是:'typeof(1L/2L)'。 –

+1

@KonradRudolph我知道。我試圖找出OP究竟在問什麼,他們對此感到困惑。我覺得這個問題很不明確。 – Roland

回答

1

嗯,因爲任何數量R中文字的類型爲double,除非它最終由L

> typeof(1) 
double 
> typeof(NA_real_) 
double 
> typeof(1L) 
integer 

而且更具體地說,因爲Inf is a special value that can only be stored in a floating-point number,不是整數麻木呃。

+0

不一定是這樣的:例如'1:5'的類型是'integer'。 – JDL

+0

@JDL真,但它不是數字字面。 ;-)這個類型依賴於':',可以被覆蓋(在我的交互式R會話中,'1:5'的類型是'xrange',因爲我覆蓋':')。 –

+1

很好,很好......'NA_integer_':P. – JDL

相關問題