Подстановка значений матрицы в функцию - PullRequest
0 голосов
/ 05 февраля 2019

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

Во-первых, воспроизводимый пример:

ID     code.X    code.Y
1         a         b
2         a         a
3         b         b 
4         a         a 
5         c         c 
6         c         a 
7         a         a 
8         a         b 
9         c         c
10        c         c 

У меня есть переменная ID и два столбца, содержащие классификационный код (a, b, c), и я создал таблицу 3x3 или матрицу непредвиденных расходов /кросс-табулирование с использованием

 X <- table(code.X, code.Y) 
 X

                        code.Y

                   a      b      c         total 
                ¦-------------------
              a ¦  3      2      0         5
                ¦           
   code.Y     b ¦  0      1      0         1 
                ¦
              c ¦  1      0      3         4


                   4      3      3         10 

Я хочу иметь возможность использовать значения X [i, j] и итоги каждой строки и столбца на следующем шаге, где они будут вставлены в функцию.

Мой следующий шаг - создать новую матрицу, используя значения и итоги, показанные выше.Поэтому у меня будет другая матрица, где X [i, j] будет использовать значения из матрицы выше.

Я хочу иметь возможность использовать значения X [i, j] и подставить их в формулу для создания новой матрицы.Например, я могу разделить X [i, j] на сумму столбца или строки.Я думал о двух циклах: (прошу прощения за бессмысленный код, просто пытаюсь воспроизвести идею)

 for i in length(levels(code.x)){

       for j in length(levels(code.y)){ 


        X2[i, j] = X[i,j] * margin(X[1, j])

 }}

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

Я также думал об извлечении значений из таблицы для создания фрейма данных в форме

ID          Value 

X[1, 1]        3
X[1, 2]        2
X[1, 3]        0 
X[2, 1]        0
X[2, 2]        1
X[2, 3]        0 
X[3, 1]        1 
X[3, 2]        0 
X[3, 3]        3 

. Любая помощь будет принята с благодарностью, заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...