
as.integer
Vektory typu integer
| integer {base} | Dokumentace R v češtině |
Popis
Vytváří nebo testuje objekty typu "integer".
Použití
integer(length = 0)
as.integer(x, ...)
is.integer(x)
Argumenty
length |
Nezáporné celé číslo (integer) specifikující požadovanou délku. Dvojité hodnoty budou konvertovány na integer: poskytnutí argumentu délky jiné než jeden je chyba. |
x |
objekt, který má být konvertován nebo testován. |
... |
další argumenty přenesené na jiné metody nebo z jiných metod. |
Detaily
Vektory typu integer existují tak, že data mohou být předána do C nebo Fortran kódu, který je očekává, a tak, že (malé) data typu integer mohou být reprezentována přesně a kompaktně.
Všimněte si, že současné implementace R používají 32-bitové integery pro vektory typu integer, takže rozsah reprezentovatelných integerů je omezen na cca +/-2*10^9: typ double může obsahovat mnohem větší celé čísla přesně.
Hodnota
integer vytvoří vektor typu integer zadané délky. Každý prvek vektoru se rovná 0.
as.integer se pokouší konvertovat svůj argument, aby byl typem integer. Odpověď bude NA, pokud nebude konverze úspěšná. Skutečné hodnoty větší v modulu než největší integer jsou konvertovány na NA (na rozdíl od S, který dává nejextrémější integer stejného znaménka). Neintegrální numerické hodnoty jsou zkráceny směrem k nule (tj., as.integer(x) se rovná trunc(x) there), a imaginární části komplexních čísel jsou vyřazeny (s varováním). Znakové řetězce obsahující volitelnou mezeru, po které bude následovat buď desítková reprezentace nebo hexadecimální reprezentace (začínající 0x nebo 0X) můžou být konvertovány, stejně jako všechny povolené platformou pro reálná čísla. Zbavuje atributů včetně názvů stejně jako as.vector. (Pro zajištění, že objekt x je typu integer bez zbavování atributů, použijte storage.mode(x) <- "integer".)
is.integer vrátí TRUE nebo FALSE depending on v závislosti na tom, zda je jeho argument type integer nebo nikoli, pokud není faktorem při návratu FALSE.
Poznámka
is.integer(x) netestuje jestliže x obsahuje čísla typu integer! Za tímto účelem použijte round, jako v případě funkce is.wholenumber(x) v příkladech.
Reference
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
Viz také
numeric, storage.mode.
round (a ceiling a floor na téže stránce nápovědy) pro konverzi na integrální hodnoty.
Příklady
as.integer() zkracuje: x <- pi * c(-1:1, 10) as.integer(x) is.integer(1)
is FALSE ! is.wholenumber <- function(x, tol = .Machine$double.eps^0.5) abs(x - round(x)) < tol is.wholenumber(1)
is TRUE (x <- seq(1, 5, by = 0.5) ) is.wholenumber( x ) --> TRUE FALSE TRUE ...




