gpt4 book ai didi

从数据框中的列中删除小数

转载 作者:行者123 更新时间:2023-12-02 08:17:44 26 4
gpt4 key购买 nike

我有一个数据框,列中有数字,这些数字是小数。我想删除列中的小数和整数。

我的数据框expsrs看起来像这样

ENSG00000226823.1           15     14.4947     22.5606     13.5819     5.09327     16.8503
ENSG00000266470.1 0 0 0 0 0 0
ENSG00000229435.2 0 0 0 0 0 0
ENSG00000277456.1 0 0 0 0 0 0
ENSG00000236077.2 0 0 0 0 0 0
ENSG00000280518.1 0 57.9833 30.4089 23.0059 4.85613 0

我已经尝试过这段代码,但它删除了小数但也改变了值。

exprs$V1<-round(as.numeric(exprs$V1), 0)

我想从所有列中删除小数,但不是从行名中删除。有人可以帮忙吗?

最佳答案

一种选择是通过遍历列(使用 lapply)转换为 integer

exprs[] <- lapply(exprs, as.integer)
exprs
# v1 v2 v3 v4 v5 v6
#ENSG00000226823.1 15 14 22 13 5 16
#ENSG00000266470.1 0 0 0 0 0 0
#ENSG00000229435.2 0 0 0 0 0 0
#ENSG00000277456.1 0 0 0 0 0 0
#ENSG00000236077.2 0 0 0 0 0 0
#ENSG00000280518.1 0 57 30 23 4 0

数据

exprs <- structure(list(v1 = c(15L, 0L, 0L, 0L, 0L, 0L), v2 = c(14.4947, 
0, 0, 0, 0, 57.9833), v3 = c(22.5606, 0, 0, 0, 0, 30.4089),
v4 = c(13.5819,
0, 0, 0, 0, 23.0059), v5 = c(5.09327, 0, 0, 0, 0, 4.85613), v6 = c(16.8503,
0, 0, 0, 0, 0)), .Names = c("v1", "v2", "v3", "v4", "v5", "v6"
), class = "data.frame", row.names = c("ENSG00000226823.1", "ENSG00000266470.1",
"ENSG00000229435.2", "ENSG00000277456.1", "ENSG00000236077.2",
"ENSG00000280518.1"))

关于从数据框中的列中删除小数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40399255/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com