web-gelistirme-sc.com

NUM, R içindeki INT birimine nasıl dönüştürülür?

Sayısal formatı R'deki bir tamsayıya dönüştürmeye çalışıyorum. Bu, bazı simülasyonları çalıştırmak için Java kodunu kullandığım (bu belirli veriyi int olarak okuyan) projenin bir kısmı için önemlidir. 

Hem round(x$var, 0) hem de trunc(x$var)'ı denedim. İkisi de başarılı bir şekilde çalışıyor, ancak str(x) olduğunda, x$var hala num. x bir veri çerçevesidir.

22
Vikas Tiwari

as.integer kullanın:

set.seed(1)
x <- runif(5, 0, 100)
x
[1] 26.55087 37.21239 57.28534 90.82078 20.16819


as.integer(x)
[1] 26 37 57 90 20

Sınıf için test:

xx <- as.integer(x)
str(xx)
 int [1:5] 26 37 57 90 20
36
Andrie

Veri çerçevesinin sütununu hızlıca değiştirmek için convert öğesini hablar öğesinden kullanabilirsiniz.

library(tidyverse)
library(hablar)

x <- tibble(var = c(1.34, 4.45, 6.98))

x %>% 
  convert(int(var))

sana verir:

# A tibble: 3 x 1
    var
  <int>
1     1
2     4
3     6
0
davsjob