楼主: Wendydydy1204
5588 1

[问答] 请教一个R的问题Error in `[<-`(`*tmp*`, i, a[j] + 1, value = 1) : 下标越界 [推广有奖]

  • 0关注
  • 0粉丝

学前班

50%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
1 小时
注册时间
2021-12-27
最后登录
2021-12-29

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
新手刚学R语言遇到了一些问题,运行之后出现了这些报错,请问应该怎么解决?求大神指导,非常感谢!
> mulfa <- function(x){
+   n <- num_q[x]
+   A <- matrix(data=rep(0,nrow(data1)*n),nrow=nrow(data1),ncol=n)
+   
+   for(i in 1:nrow(data1)){
+     if(is.na(vv[i,x])){
+       A[i,] = rep(0,n)
+     }else{
+       vv[i,x] <- gsub("|","",vv[i,x],fixed=T)
+       a <- unlist(strsplit(vv[i,x],split=""))
+       a <- as.numeric(a)
+       for(j in 1:length(a)){
+         A[i,a[j]+1] <- 1
+       }
+     }
+   }
+   
+   name <- c()
+   B <- c("q500","q510","q520","q530","q540","q560","q580","q110")
+   for(m in 1:n){
+     name[m] <- paste(B[x],".",as.character(m))
+   }
+   colnames(A) <- name
+   return(as.data.frame(A))
+ }
> Q500 <- mulfa(1)
Error in `[<-`(`*tmp*`, i, a[j] + 1, value = 1) : subscript out of bounds

> Q510 <- mulfa(2)
Error in `[<-`(`*tmp*`, i, a[j] + 1, value = 1) : subscript out of bounds
> Q520 <- mulfa(3)
> Q530 <- mulfa(4)
Warning messages:
1: In mulfa(4) : NAs introduced by coercion
2: In mulfa(4) : NAs introduced by coercion

二维码

扫码加我 拉你入群

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

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

关键词:Error err 非常感谢 Mul R语言

沙发
s609078902 发表于 2021-12-28 10:09:07 |只看作者 |坛友微信交流群
你给 x 取个具体的值,把你定义的函数里的代码依次跑一遍,看一下具体是哪里报错了。

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-11-11 05:35