Skip to contents

Esta função calcula a log-verossimilhança de um conjunto de dados para uma variável beta ordinal, aplicando diferentes funções de ligação tanto no betas de mu como no zetas de phi.

Usage

betaregscale_log_vero_z(
  param,
  formula = y ~ x1 + x2 | z1,
  dados,
  link = "logit",
  link_phi = "logit",
  ncuts = 100,
  type = "m",
  lim = 0.5,
  acumulada = TRUE,
  repar = "2"
)

Arguments

param

Vetor numérico de parâmetros, incluindo coeficientes de regressão e o parâmetro phi.

formula

Fórmula para expressar a relação das preditoras X1, X2, Xn relacionadas com os betas. Ex. formula = y ~ X1 + X2, y ~ X1 + X2|z1, y ~ X1 + X2 | z1 + z2.

dados

Um conjunto de dados que contém a variável dependente e as variáveis independentes especificadas na fórmula.

link

Nome da função de ligação a ser usada para as preditoras X1, X2, ..., Xn. Pode ser uma das seguintes: "logit", "probit", "cauchit" ou "cloglog". O padrão é "logit".

link_phi

Nome da função de ligação a ser usada para as preditoras Z1, Z2, ..., Zn relacionadas com phi. Pode ser uma das seguintes: "log", "sqrt e "identity". O padrão é "log".

ncuts

Número de cortes para a variável ordinal. O padrão é 100.

type

Tipo de intervalo. "m" = meio; "l" = esquerda e "r" = direita.

lim

Região de incerteza da medida. Padrão 0.5.

acumulada

Um valor lógico indicando se a log-verossimilhança acumulada deve ser calculada. O padrão é TRUE.

repar

Tipo de reparametrização sendo 0, 1 ou 2. Padrão 2.

Value

Retorna a soma da log-verossimilhança dos dados.

Examples

# Criar um conjunto de dados de exemplo
n <- 100
dados <- data.frame(x1 = rnorm(n), x2 = rnorm(n),
                    z1 = runif(n), z2 = runif(n))
fx <- ~ x1 + x2
fz <- ~ z1
dados_simulados <- betaregscale_simula_dados_z(
 formula_x = fx,
 formula_z = fz,
 dados = dados,
 betas = c(0.2,-0.5, 0.3),
 zetas = c(0.5, -0.5),
 link = "logit",
 link_phi = "logit",
 repar = "2",
 ncuts = 100)

# Calcular a log-verossimilhança usando a função betaregscale_log_vero_z
log_verossimilhanca <- betaregscale_log_vero_z(
  param = c(c(0.2,-0.5, 0.3), c(0.5, -0.5)),
  formula = y ~ x1 + x2 | z1,
  dados = dados_simulados,
  link = "logit",
  link_phi = "logit",
  acumulada = TRUE,
  repar = "2")