вычислить средние и совпадения из нескольких матриц

У меня есть несколько матриц, все они имеют один и тот же тип элементов, но разную длину. Столбцы во всех файлах одинаковы (назовем их A и B), но строки между файлами — это в основном одни и те же элементы, но не всегда.

Вот несколько примеров данных (в виде фреймов данных)

df1 <- data.frame(A = 1:3, B = 3:1) rownames(df1)=c(«alpha»,»beta»,»gamma») df2 <- data.frame(A = 1:5,B = 5:1) rownames(df2)=c(«alpha»,»beta»,»delta»,»gamma»,»zeta») df3 <- data.frame(A = 1:7, B = 7:1) rownames(df3)=c(«alpha»,»beta»,»delta»,»gamma»,»zeta»,»theta»,»epsilon»)

как вы можете видеть, насколько далеко идут строки, хотя альфа, бета и гамма всегда присутствуют, многие другие не всегда есть

Я хотел бы вычислить 2 вещи: средние значения всех столбцов A и B во всех матрицах, и в идеале это было бы путем создания ave.matr, который имел бы все имена строк и средние / средние значения столбцов A и B

A B alpha 1 7 beta 2 6 delta 3 5 gamma 4 4 zeta 5 3 theta 6 2 epsilon 7 1

(где указанные выше числа являются средними значениями всех матриц)

а затем матрицу вхождений, позвольте вызвать ее .matr, которая будет подсчитывать количество вхождений каждой строки во всех матрицах, и это должно выглядеть так

A B alpha 3 beta 3 delta 2 gamma 3 zeta 2 theta 1 epsilon 1

Я начал работать над этим сегодня, но не могу понять, как это сделать.

Я начал с создания списка и матрицы с уникальными именами всех матриц.

list=c(rownames(df1),rownames(df2),rownames(df3)) unique=unique(list) avematr<-matrix(NA,nrow=length(unique),ncol=2)

и моим следующим шагом было бы сделать одинаковые имена всех матриц. Я пробовал использовать совпадение, но не могу понять, но на данный момент я даже не знаю, лучшая ли это стратегия … И все похожие вопросы связаны со слиянием матриц (это не то, что я хочу делать).

Любая помощь приветствуется

Источник: ledsshop.ru

Стиль жизни - Здоровье!