8466 4

[问答] numerical expression has 20 elements怎么回事? [推广有奖]

  • 0关注
  • 0粉丝

小学生

71%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
46 点
帖子
5
精华
0
在线时间
6 小时
注册时间
2014-5-10
最后登录
2017-4-7

楼主
卷卷福黄瓜片儿 发表于 2015-12-28 20:31:28 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
在尝试自己编写acf函数的时候出现标题里的问题 希望得到大家的帮助!

以下是我的代码:
  1. myacf<-function(j){
  2.    u=mean(data)
  3.    T=1:201
  4.    len.T=length(T)
  5.    a1=data[1:(len.T-j)]
  6.    a2=data[(j+1):len.T]
  7.    a3=data
  8.    m=sum((a1-u)*(a2-u))/sum((a3-u)*(a3-u))
  9.    return(m)
  10. }
复制代码
这样写下来得到每一个单独的myacf(j)都是正确的(和acf()的结果比较)
但是当我想看到一系列myacf(j)的值的时候就有问题了(如下图)
  1. myacf(1:20)
  2. [1] 0.578272
  3. Warning messages:
  4. 1: In 1:(len.T - j) :
  5.   numerical expression has 20 elements: only the first used
  6. 2: In (j + 1):len.T :
  7.   numerical expression has 20 elements: only the first used
复制代码


不知道应该用什么方法解决这个问题?大大们快教教我QAQ

(不要问我为什么要自己写acf代码...我们老师就是个坑...
二维码

扫码加我 拉你入群

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

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

关键词:Expression Numerical Elements numeric express expression function elements return

沙发
万人往LVR 在职认证  发表于 2015-12-29 11:17:43
sapply(1:20,myacf)

藤椅
suimong 发表于 2015-12-29 22:00:09
就是你写的函数没有向量化。
你可以试试:
  1. myacf2 <- Vectorize(myacf)
  2. myacf2(1:20)
复制代码

板凳
卷卷福黄瓜片儿 发表于 2016-1-4 15:06:08
suimong 发表于 2015-12-29 22:00
就是你写的函数没有向量化。
你可以试试:
可以了!非常感谢!!

报纸
张翠琴 发表于 2018-11-27 14:25:15
非常感谢 刚好也是报这个问题

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

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