第一次在这里用户!我只是在学习R并且我希望这是一个简单的问题。我有一系列数字,数字,我会确保没有数字大于一。我正在努力
myfct <- function(x) {
if ( x > 1.0 ) x = 1.0
return(x)
}
apply(nums, 1, myfct)
但是我得到了这个错误
Error in apply(nums, 1, myfct) :
dim(X) must have a positive length
我做错了什么,有更好的方法吗?谢谢!
答案 0 :(得分:3)
我们可以使用replace
replace(nums, nums > 1, 1)
答案 1 :(得分:1)
请改为尝试:
nums[] <- pmin(nums, 1)
pmax
是一个“并行化”的最大值,因此任何大于1的值都会被替换为1.如果[]
是原子向量,那么可能没有nums
。