Вычислите rat ios всех комбинаций столбцов из кадра данных - PullRequest
0 голосов
/ 10 марта 2020

У меня есть файл CVS, импортированный как df в R. Размерность этого df составляет 18x11. Я хочу рассчитать все возможные крысы ios между столбцами. Ребята, не могли бы вы помочь мне с этим? Я понимаю, что 'for l oop "или векторизованная функция выполнят эту работу. Имена строк останутся прежними, в то время как комбинации имен столбцов могут быть объединены с помощью paste. Однако я не знаю, как это выполнить. Я Я сделал это в Excel, так как это все еще меньший набор данных.Больше размер сделает его утомительным и подверженным ошибкам в Excel, поэтому я хотел бы попробовать в R.

Действительно будет большой помощью. Спасибо. Допустим, ниже представлен фрейм данных в качестве подмножества из моих данных.

dfn = data.frame(replicate(18,sample(100:1000,15,rep=TRUE)))

1 Ответ

1 голос
/ 10 марта 2020

Если вы сделаете:

do.call("cbind", lapply(seq_along(dfn), function(y) apply(dfn, 2, function(x) dfn[[y]]/x)))

Вы получите массив 15 * 324, с 18 столбцами, представляющими все столбцы, разделенные на первый столбец, 18 столбцами, разделенными на второй столбец, и т. Д. .

Вы можете отслеживать их, пометив столбцы следующими именами:

apply(expand.grid(names(dfn), names(dfn)), 1, paste, collapse = " / ")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...