gpt4 book ai didi

重新编码省略 NA 的值

转载 作者:行者123 更新时间:2023-12-01 22:04:54 25 4
gpt4 key购买 nike

我想以这样的方式重新编码矩阵中的值,使所有值 <=.2 变为 2,<=.4 变为 3 等。但是,我的数据中有缺失,我不想更改(保留它们不适用)。在这里您可以找到我的代码的简化版本。使用 na.omit 非常适合第一次更改

try <- matrix(c(0.78,0.62,0.29,0.47,0.30,0.63,0.30,0.20,0.15,0.58,0.52,0.64,
0.76,0.32,0.64,0.50,0.67,0.27, NA), nrow = 19)
try[na.omit(try <= .2)] <- 2 #Indeed changes .20 and .15 to 2 and leaves the NA as NA

但是,当我对更高类别执行相同操作时,NA 也会更改:

try[na.omit(try <= .8)] <- 5 #changes all other values including the NA to 5

有人可以向我解释一下两者之间有什么区别以及为什么第二个也会改变 NA 值而第一个不会?还是我做错了什么?

最佳答案

你可以做到

try[try <= .8] <- 5

NA 值将保持为 NA

或者创建一个逻辑条件来排除 NA

try[try <=.8 & !is.na(try)] <- 5

关于重新编码省略 NA 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28213776/

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