as.mixdata.r

来自「这个包里面含有利用极大似然估计方法来拟合成组数据和条件数据的有限混合分布模型的函」· R 代码 · 共 29 行

R
29
字号
## last modified 23 Oct 2002 by J. Du

as.mixdata <- function (x) 
{
    if (is.data.frame(x) | is.matrix(x)) {
        k <- nrow(x)
        m <- ncol(x)
        if (sum(is.na(x[, -1])) == 0 & sum(is.infinite(x[, -1])) == 
            0) 
            if (sum(x[, -1] < 0) == 0) {
                if (is.na(x[k, 1])) 
                  x[k, 1] <- Inf
                if (sum(is.na(x[-k, 1])) == 0 & sum(is.infinite(x[-k, 
                  1])) == 0 & sum(x[-k, 1] - x[-1, 1] >= 0) == 
                  0) {
                  if (!(is.na(x[k, 1]) | is.infinite(x[k, 1])) & 
                    is.numeric(x[k, 1])) {
                    x[k + 1, 1] <- Inf
                    x[k + 1, 2:m] <- 0
                  }
                  class(x) <- c("mixdata", "data.frame")
                }
            }
    }
    if (sum(!is.na(match(class(x), "mixdata"))) == 0) 
        NULL
    else x
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?