R 对S4对象和带有2个参数的自定义函数使用“lappy”

R 对S4对象和带有2个参数的自定义函数使用“lappy”,r,list,function,lapply,s4,R,List,Function,Lapply,S4,我试图使用lappy()在S4对象上执行我自己的名为myfun(x,y)的函数,但不知道这样做是否合适 我的S4对象dblist包含3个插槽,我想使用接受参数df.list和df.para的函数填充空绘图df.para。(参数df.para用于创建子插槽(例如$Name;$Eval…等)) 所以我试了一下: > lapply(dblist@df.list, myfun(x,y) , y=dblist@df.para) Error: object 'x' not found 以下是对象

我试图使用
lappy()
在S4对象上执行我自己的名为
myfun(x,y)
的函数,但不知道这样做是否合适

我的S4对象
dblist
包含3个插槽,我想使用接受参数
df.list
df.para
的函数填充空绘图
df.para
。(参数
df.para
用于创建子插槽(例如$Name;$Eval…等))

所以我试了一下:

> lapply(dblist@df.list, myfun(x,y) , y=dblist@df.para)  
Error: object 'x' not found
以下是对象的说明
dblist

> str(dblist)
Formal class 'dblist' [package ".GlobalEnv"] with 3 slots
  ..@ df.list :List of 102
  .. ..$ :'data.frame': 81 obs. of  3 variables:
  .. .. ..$ Parametre: Factor w/ 81 levels "1.","10.","11.",..: 77 79 76 80 74 81 75 78 1 13 ...
  .. .. ..$ valeur1  : Factor w/ 69 levels "","1/2-1/2","1522",..: 55 27 5 11 20 4 3 2 24 26 ...
  .. .. ..$ valeur2  : Factor w/ 73 levels "","]","a6","b5",..: 2 2 2 2 2 2 2 2 28 21 
...  
.. .. [list output truncated]
  ..@ df.para : list()
  ..@ df.coups: list()

我认为问题在于,您的
lappy
函数对
myfun
的参数不够清楚。试试这个:

lapply(X=dblist@df.list, FUN=myfun(x=X,y) , y=dblist@df.para)