Я пытаюсь применить функцию по всем строкам и столбцам двух фреймов данных, но я не знаю, как ее решить с применением. Я думаю, что следующий сценарий объясняет, что я намереваюсь сделать, и способ, которым я пытался его решить. Любые советы будут высоко оценены! Обратите внимание, что simplefunction
предназначен только для удобства использования.Применение ко всем столбцам и строкам двух разных фреймов данных в R
# some data and a function
df1<-data.frame(name=c("aa","bb","cc","dd","ee"),a=sample(1:50,5),b=sample(1:50,5),c=sample(1:50,5))
df2<-data.frame(name=c("aa","bb","cc","dd","ee"),a=sample(1:50,5),b=sample(1:50,5),c=sample(1:50,5))
simplefunction<-function(a,b){a+b}
# apply on a single row
simplefunction(df1[1,2],df2[1,2])
# apply over all colums
apply(?)
## apply over all columns and rows
# create df to receive results
df3<-df2
# loop it
for (i in 2:5)df3[i]<-apply(?)
Возможно, вам следует более точно определить, что вы подразумеваете под «применить по всем строкам и столбцам» и предоставить реальную воспроизводимую функцию и желаемый результат. – juba
Извините за непонимание. Я отредактировал вопрос выше, в том числе, что это только примерная функция. Код воспроизводимый, и я намеревался сохранить его простым, чтобы сделать сообщение полезным для других. – Joschi
+1 для обеспечения простого воспроизводимого примера (несмотря на недоразумение, которое оно приводит!). –