Ограничения как по горизонтали / линии, так и по вертикали / столбцу для MICE в R - PullRequest
0 голосов
/ 02 ноября 2018

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

Вот как выглядит мой фрейм данных:

#Example of data frame (lines : species, columns: traits, values : traits value for each species)
tab_sptraits<- data.frame (
    trait1 = c(15, 2, 3, 6, 5, NA, NA, 5, 4, 6, 17), 
    trait2 = c(511, 532, 426, NA, 236, NA, 653, NA, 569, 345, 568),
    row.names = c("sp1", "sp2", "sp3", "sp4", "sp5", "sp6", "sp7", "sp8", "sp9", "sp10", "sp11")
    )
tab_sptraits

Для каждого вида (строка) и для каждой строки (столбца) существуют («биологически») минимальные и максимальные значения:

minmaxvalue_trait1<- data.frame (
    min = c(5, 1, 1, 1, 1, 2, 1, 3, 3, 1, 4),
    max = c(22, 12, 35, 8, 9, 11, 9, 10.5, 4.5, 6, 31),
    row.names = c("sp1", "sp2", "sp3", "sp4", "sp5", "sp6", "sp7", "sp8", "sp9", "sp10", "sp11")
    )

minmaxvalue_trait2 <- data.frame (
    min = c(420, 231, 421, 129, 210, 785, 264, 265, 232, 126, 549),
    max = c(652, 784, 569, 399, 358, 1365, 795, 396, 785, 647,981),
    row.names = c("sp1", "sp2", "sp3", "sp4", "sp5", "sp6", "sp7", "sp8", "sp9", "sp10", "sp11")
    )
minmaxvalue_trait2

Поэтому я хотел бы назначить значения для NA согласно этим минимальным и максимальным значениям: Например, для вида № 4 (строка «sp4») значение биологического признака 2 (столбец «признак 2») должно составлять от 129 до 399.

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

Можно ли применить эти ограничения? Если да, то как мне действовать?

Спасибо за помощь,

...