全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
5924 18
2018-01-05
如题,现在要判断的不止一个变量,想做的类似:if (x>0 & y<0){
  z=0
}else if(x<0 & y>0){

z=0}else{
  z=1
}
请问R可以做到吗?如何做到?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2018-1-5 11:20:32
你把你的代码里面的括号换成英文括号,代码本身就能实现你说的情况啊。R里的“且”有 & 和 &&,用的时候注意区别就行了。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-1-5 11:26:54
& 是位运算, 判断尽量用 &&而且你这个 用一个 if(x * y < 0)
不就好了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-1-5 14:07:12
jinkelazzz 发表于 2018-1-5 11:26
& 是位运算, 判断尽量用 &&而且你这个 用一个 if(x * y < 0)
不就好了
实际上不是这么简单的条件,只是涉及两个变量,一个的时候代码运行没问题,加入另一个条件后就出现missing value where TRUEFALSE needed,改来改去改不好
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-1-5 14:10:09
zhouhao211314 发表于 2018-1-5 11:20
你把你的代码里面的括号换成英文括号,代码本身就能实现你说的情况啊。R里的“且”有 & 和 &&,用的时候注意 ...
嗯,我打字的时候可能没注意,我是想抓分钟数据的趋势,既要用到差分序列又要用原序列来设定条件,一引用两个序列时就出问题了,改来改去总是missing value where TRUEFALSE needed
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-1-5 14:19:35
月色凝寂 发表于 2018-1-5 14:07
实际上不是这么简单的条件,只是涉及两个变量,一个的时候代码运行没问题,加入另一个条件后就出现missin ...
y<-vector(mode="numeric",length=0 )
for (i in 3:nrow(data){
  if(data$diff[i-2]<0&&data$diff[i-1]>0&&data$diff<0&&data$mean<data$mean[i-2]){
    y<-0
  }else{
    y<-0
  }
}
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群