我正在尝试编写一个设置较低级别截止的函数"
trunc1 <- function(x,threshold) ifelse(x<=threshold,0,x)
df<-data.frame(a=seq(0,1,0.1),b=seq(0.05,1.05,0.1))
我跑的时候:
trunc1(df$a,0.5)
我得到了
0.0 0.0 0.0 0.0 0.0 0.0 0.6 0.7 0.8 0.9 1.0
这是我的期望。然而,
trunc1(df$a,0.6)
返回
0.0 0.0 0.0 0.0 0.0 0.0 0.6 0.7 0.8 0.9 1.0
我对此感到惊讶,因为0.6&lt; = 0.6 ifelse函数应该返回0而不是0.6。我知道这应该很简单。
x<-seq(0,1,0.1)<=0.6
names(x)<-seq(0,1,0.1)
返回
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
TRUE TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE
版本
_
平台x86_64-apple-darwin15.6.0
拱x86_64
os darwin15.6.0
system x86_64,darwin15.6.0
状态
专业3
未成年人4.3
2017年
年
月11日
第30天
svn rev 73796
语言R
version.string R版本3.4.3(2017-11-30)
昵称风筝吃树