mapply sobre dos listas [cerrado]

Hace poco hice una pregunta sobre el uso de unapply Funciona sobre dos listas. Cada lista es una lista de marcos de datos creados al dividir un marco de datos grande. Por cada vez que se ejecuta la función, quiero tomar vectores del primer elemento (un marco de datos) enmylist1 y algunos vectores del primer elemento (un marco de datos) enmylist2 y los regresa uno contra el otro. Luego pasar a la siguientemylist1 elemento ymylist2 elemento. Efectivamente, la función toma dos listas con el mismo número de elementos y toma un par (uno de cada lista) y juega con ellos.

Intenté lo siguiente, pero los resultados que obtengo no son los que quiero:

a1<-c(1:5,rep(0,5))
a2<-c(1:5,10:6)
b2<-c(rep(100,5),rep(50,5))
z<-c(rep("part1",5),rep("part2",5))
df1<-data.frame(a1,z)
df2<-data.frame(a2,b2,z)

mylist1<-split(df1,z)
mylist2<-split(df2,z)


myfunction<-function(x,y) 
{

meana <- mean(x$a)
meanb <- mean(y$b)
model<-lm((x$a)~(y$a))
return(c(model$coefficients[2],meana=meana,meanb=meanb))
}

result <- mapply(myfunction,x=mylist,y=mylist2)

 #result
#        x   y
#y$a     1  -1
#meana   3   8
#meanb 100  50

Lo que quiero es:

#y$a     1   0   
#meana   3   0
#meanb   100 50


#e.g. the results in the first row are from lm((mylist1[[1]][,1])~(mylist2[[1]][,1]))  and lm((mylist1[[2]][,1])~(mylist2[[2]][,1]))  

Respuestas a la pregunta(1)

Su respuesta a la pregunta