楼主: yifan_Niu
4812 2

[问答] R语言求极大值,循环提示【argument is of length zero】 [推广有奖]

  • 0关注
  • 0粉丝

VIP1

本科生

69%

还不是VIP/贵宾

-

威望
0
论坛币
1439 个
通用积分
3.0002
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2456 点
帖子
45
精华
0
在线时间
81 小时
注册时间
2017-10-12
最后登录
2020-9-6

楼主
yifan_Niu 学生认证  发表于 2018-11-21 10:35:49 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
Minimum<-function(x){
  n<-nrow(x)
  x_min<-matrix(0,nrow = n)
  if(x[2,]>x[1,]){
    x_min[1,]<-x[1,]
  }
  if(x[n-1,]>x[n,]){
    x_min[n,]<-x[n,]
  }
  for (i in 2:n-1) {
    if(x[i-1,]>x[i,]&x[i+1,]>x[i,]){
      x_min[i,]<-x[i,]
    }
  }
}

小弟自己写的求局部极小值的函数代码如上。
现有一向量y,nrow=192。要求y的所有局部极小值点。
输入y_min<-Minimum(y),提示:
Error in if (x[i - 1, ] > x[i, ] & x[i + 1, ] > x[i, ]) { :
  argument is of length zero

百思不得其解,求大神解惑。

二维码

扫码加我 拉你入群

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

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

关键词:极大值

沙发
yifan_Niu 学生认证  发表于 2018-11-21 10:38:42
补充一点就是,如不不写函数,直接写循环的话是没有问题的。另外,小弟用的是R studio进行编写的。

藤椅
jinkelazzz 发表于 2018-11-21 15:23:49
2:n-1 改成 2:(n - 1)

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-23 19:55