楼主: 耕耘使者
2012 12

[程序分享] 请教这个if结构哪错了? [推广有奖]

贵宾

已卖:5006份资源

学术权威

39%

还不是VIP/贵宾

-

威望
4
论坛币
1811021 个
通用积分
171.7911
学术水平
109 点
热心指数
173 点
信用等级
87 点
经验
93428 点
帖子
4549
精华
0
在线时间
2848 小时
注册时间
2006-4-6
最后登录
2025-7-12

楼主
耕耘使者 发表于 2014-2-5 09:48:21 |AI写论文
100论坛币
  1. x=c(1,2,3,5,6)
  2. y=vector()
  3. if(x>3) {
  4. y<-10
  5. } else{
  6. y<-0
  7. print(y)
  8. }
复制代码

结果是:
[1] 0
Warning message:
In if (x > 3) { :
  the condition has length > 1 and only the first element will be used
>
关键词:Element Vector First used will element

沙发
dxystata 发表于 2014-2-5 09:48:22
  1. x=c(1,2,3,5,6)
  2. y=vector()
  3. for(i in 1:length(x)) {
  4. if (x[i]>3) {
  5.   y<-10
  6.   print(y)
  7. } else{
  8.   y<-0
  9.   print(y)
  10. }
  11. }
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
耕耘使者 + 1 + 1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

藤椅
dxystata 发表于 2014-2-5 09:55:06
  1. x=c(1,2,3,5,6)
  2. y=vector()
  3. for(i in 1:5) {
  4. if (x[i]>3) {
  5.   y<-10
  6. } else{
  7.   y<-0
  8.   print(y)
  9. }
  10. }
复制代码

板凳
dxystata 发表于 2014-2-5 10:01:21
x的长度为5,x>3中x只取第一个元素,需采用循环可以实现!
已有 2 人评分学术水平 热心指数 信用等级 收起 理由
耕耘使者 + 1 + 1 + 1 观点有启发
求证1加1 + 1 热心帮助其他会员

总评分: 学术水平 + 1  热心指数 + 2  信用等级 + 1   查看全部评分

报纸
1253197054 发表于 2014-2-5 10:14:57
看不懂
hello,hawaii

地板
1253197054 发表于 2014-2-5 10:14:57
看不懂
hello,hawaii

7
求证1加1 发表于 2014-2-5 10:16:36
  1. x<-c(1,2,3,5,6);
  2. y<-rep(0,5);
  3. y[x>3]=10;
  4. y[x<=3]=0;
复制代码
不知道lz是不是这个意思
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
耕耘使者 + 1 + 1 + 1 观点有启发

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

个人主页,欢迎订阅http://chenangliu.info/

8
1253197054 发表于 2014-2-5 10:19:06
求证1加1 发表于 2014-2-5 10:16
不知道lz是不是这个意思
  1. y[x<=3]=0;
复制代码
hello,hawaii

9
耕耘使者 发表于 2014-2-5 10:24:33
求证1加1 发表于 2014-2-5 10:16
不知道lz是不是这个意思
老兄厉害!
弱弱地说,我的本意是学习一下if结构

10
kaifengedu 发表于 2014-2-5 12:56:42
  1. x <- 1:6
  2. y <- ifelse(x > 3, 10, 0)
  3. print(y)
复制代码
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
耕耘使者 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-26 02:55