我正在尝试将数字格式转换为R中的整数。这对于我使用Java代码运行某些模拟(将此特定数据读取为int)的项目的一部分非常重要。
我尝试了round(x$var, 0)
和trunc(x$var)
。它们都成功运行,但当我str(x)
时,x$var
仍然是num
。 x是一个数据帧。
答案 0 :(得分:38)
使用as.integer
:
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
上课测试:
xx <- as.integer(x)
str(xx)
int [1:5] 26 37 57 90 20
答案 1 :(得分:0)
您可以使用convert
中的hablar
快速更改数据框的一列。
library(tidyverse)
library(hablar)
x <- tibble(var = c(1.34, 4.45, 6.98))
x %>%
convert(int(var))
给您
# A tibble: 3 x 1
var
<int>
1 1
2 4
3 6