楼主: liuzc_108
1339 0

[问答] 【求助】运行sapply时报错:Argument 2 must be named, not unnamed. [推广有奖]

  • 1关注
  • 0粉丝

本科生

59%

还不是VIP/贵宾

-

威望
0
论坛币
13 个
通用积分
1.2045
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1082 点
帖子
25
精华
0
在线时间
157 小时
注册时间
2017-5-31
最后登录
2024-10-23

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

【主要问题描述】

因为要对一批变量进行相同规则的重编码,所以使用了apply族命令:

  1.   fun.mention <- function(x) {
  2.     y <- recode(x, "'Mentioned' = 1;
  3.                 'Not mentioned' = 0;
  4.                 else = NA")
  5.     y <- as.numeric(y)
  6.   }
  7.   names(df)
  8.   tolerance.temp <- base::sapply(df[, 20:28], fun.mention)
复制代码

晚上睡觉前还可以成功运行,起床后对上文最后一行sapply运行报错:

  1. Error: Argument 2 must be named, not unnamed.
复制代码

sapply的参数形式应该是:

  1. sapply(X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
复制代码

我已经定义fun.mention,所以不明白为什么会说我sapply中的参数有unnamed问题。


【已经采取的补救措施】

这一报错我在使用recode时也遇到过。当时发觉应当是因为car和dplyr中都有recode,识别混淆了,所以指定car包,改为car::recode后就成功运行了。

但是这样改对sapply不起作用。

  1. >   tolerance.temp <- base::sapply(df[, 1:9], fun.mention)
复制代码

清空环境,重启R-studio也没用。

先谢谢各位大佬!


二维码

扫码加我 拉你入群

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

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

关键词:argument unnamed Named apply name 数据分析 参数

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

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

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

GMT+8, 2024-11-5 23:33