使用R进行WQS分析时遇.subset(x,j):invalid subscript type 'list'报错求助
问题解决:WQS分析报错
Error in .subset(x, j) : invalid subscript type 'list' 报错根源:
gwqs()函数的mix_name参数要求传入混合物变量的名称字符向量,但你传入的subset_data是数据框类型,参数类型不匹配导致报错。修正方案:
- 利用已定义的
lnpfas的列名传入参数:results <- gwqs(A.Surface.Area ~ wqs, mix_name = colnames(lnpfas), data = mixturewcovariates, q = 4, validation = 0.6, b = 2, b1_pos = TRUE, b1_constr = FALSE, family = "gaussian", seed = 2016) - 直接指定变量名字符向量(更直观):
results <- gwqs(A.Surface.Area ~ wqs, mix_name = c("Ln.PFHXS.", "Ln.PFOS.", "Ln.PFOA.", "Ln.PFNA."), data = mixturewcovariates, q = 4, validation = 0.6, b = 2, b1_pos = TRUE, b1_constr = FALSE, family = "gaussian", seed = 2016)
- 利用已定义的
额外说明:你之前定义的
subset_data <- mixturewcovariates[, c(6:9)]是提取数据框的列,并非mix_name所需的参数类型,替换为变量名向量即可解决问题。
内容的提问来源于stack exchange,提问作者researchdrama
相关产品推荐
相关产品推荐

