- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下数据框
> df <- dput(df2)
structure(list(Economy = c("FRANCE", "FRANCE", "SPAIN", "SPAIN",
"GREECE", "GREECE", "ITALY", "ITALY", "PORTUGAL", "PORTUGAL"),
ConditionA = c(9, 12, 12, 12, 12, 12, 13, 13, 12, 13), ConditionB = c(16,
16, 18, 21, 27, 27, 30, 36, 36, 36), ConditionC = c(27, 29,
31, 34, 41, 48, 52, 56, 56, 56), ConditionD = c(NA_real_,
NA_real_, NA_real_, NA_real_, NA_real_, NA_real_, NA_real_,
NA_real_, NA_real_, NA_real_)), row.names = c(NA, 10L), class = "data.frame
> df2
Economy ConditionA ConditionB ConditionC ConditionD
1 FRANCE 9 16 27 NA
2 FRANCE 12 16 29 NA
3 SPAIN 12 18 31 NA
4 SPAIN 12 21 34 NA
5 GREECE 12 27 41 NA
6 GREECE 12 27 48 NA
7 ITALY 13 30 52 NA
8 ITALY 13 36 56 NA
9 PORTUGAL 12 36 56 NA
10 PORTUGAL 13 36 56 NA
df %>%
dplyr::select(-Economy) %>% # exclude outcome, leave only predictors
map(~lm(.x ~ Economy , data =df, na.action = "na.omit")) %>%
map(summary)
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) :
contrasts can be applied only to factors with 2 or more levels
最佳答案
除了修复 ConditionD 之外,您还可以一次性回归所有这些:
M = df2[,grep("Condition",colnames(df2))]
M = as.matrix(M[,colSums(!is.na(M))>0])
fit = lm(M ~ Economy,data=df2)
lapply(summary(fit),coefficients)
$`Response ConditionA`
Estimate Std. Error t value Pr(>|t|)
(Intercept) 10.5 0.7071068 14.84924 2.505578e-05
EconomyGREECE 1.5 1.0000000 1.50000 1.939037e-01
EconomyITALY 2.5 1.0000000 2.50000 5.449010e-02
EconomyPORTUGAL 2.0 1.0000000 2.00000 1.019395e-01
EconomySPAIN 1.5 1.0000000 1.50000 1.939037e-01
$`Response ConditionB`
Estimate Std. Error t value Pr(>|t|)
(Intercept) 16.0 1.50000 10.666667 0.0001253456
EconomyGREECE 11.0 2.12132 5.185450 0.0035093242
EconomyITALY 17.0 2.12132 8.013877 0.0004889171
EconomyPORTUGAL 20.0 2.12132 9.428090 0.0002265750
EconomySPAIN 3.5 2.12132 1.649916 0.1598731108
$`Response ConditionC`
Estimate Std. Error t value Pr(>|t|)
(Intercept) 28.0 1.974842 14.178351 3.142696e-05
EconomyGREECE 16.5 2.792848 5.907948 1.978175e-03
EconomyITALY 26.0 2.792848 9.309493 2.406736e-04
EconomyPORTUGAL 28.0 2.792848 10.025608 1.688635e-04
EconomySPAIN 4.5 2.792848 1.611258 1.680400e-01
tidy
中的
broom
可以与这个传销联系起来:
library(broom)
tidy(fit)
# A tibble: 15 x 6
response term estimate std.error statistic p.value
<chr> <chr> <dbl> <dbl> <dbl> <dbl>
1 ConditionA (Intercept) 10.5 0.707 14.8 0.0000251
2 ConditionA EconomyGREECE 1.5 1. 1.5 0.194
3 ConditionA EconomyITALY 2.5 1. 2.50 0.0545
4 ConditionA EconomyPORTUGAL 2. 1. 2 0.102
5 ConditionA EconomySPAIN 1.5 1. 1.5 0.194
6 ConditionB (Intercept) 16.0 1.50 10.7 0.000125
7 ConditionB EconomyGREECE 11. 2.12 5.19 0.00351
8 ConditionB EconomyITALY 17. 2.12 8.01 0.000489
9 ConditionB EconomyPORTUGAL 20. 2.12 9.43 0.000227
10 ConditionB EconomySPAIN 3.5 2.12 1.65 0.160
11 ConditionC (Intercept) 28 1.97 14.2 0.0000314
12 ConditionC EconomyGREECE 16.5 2.79 5.91 0.00198
13 ConditionC EconomyITALY 26.0 2.79 9.31 0.000241
14 ConditionC EconomyPORTUGAL 28.0 2.79 10.0 0.000169
15 ConditionC EconomySPAIN 4.50 2.79 1.61 0.168
关于r - 以多种结果执行 lm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61371558/
我对 lm 的一些令人不安的行为感兴趣函数和相关的predict.lm R 中的函数。splines基础包提供函数bs生成 b 样条展开,然后可用于使用 lm 拟合样条模型,一个通用的线性模型拟合函数
我使用 minpack.lm 包中的 nls.lm 来拟合许多非线性模型。 由于初始参数估计时的奇异梯度矩阵,它经常在 20 次迭代后失败。 问题是当我在失败之前查看迭代(trace = T)时,我可
我有一个稍微进入饱和状态的外部校准曲线。所以我拟合了一个二阶多项式和一个测量样本的数据框,我想知道其中的浓度。 df_calibration=structure(list(dilution = c(0
我试图弄清楚默认 r plot 的残差与拟合图中使用了哪种平滑线对于 lm对象,所以我通过输入 ?plot.lm 查看了帮助页面,因为据我了解 .是如何定义不同对象类型的这些默认行为的。 正如预期的那
我正在尝试使用 R 创建一个线性模型并使用它来预测一些值。主题是棒球数据。如果我这样做: obp <- lm(offense$R ~ offense$OBP) predict(obp, newdata
我有两个变量,我想找到它们之间的相关性。问题是,根据我使用的方法,我似乎得到了不同的结果。 我知道的一种方法是使用 scale() 函数中的自变量和因变量运行 lm() 函数。 所以下面的变量看起来像
我在使用 C Makefile 时遇到了一些问题。 Makefile 的内容如下: PROJECT = 3D-ELM MPICC = mpicc CLAGS = -g -O3 LIBS = -lm S
我使用 caret R 包作为一个非常方便的建模包装器。虽然这是一个奇怪的用法,但在使用模型类型 =“lm”和“无”的交叉验证时,我在从模型中提取结果时遇到了一些麻烦。参见下面的示例: library
我想使用 lm 在 R 中拟合线性模型获得总模型拟合的系数估计值和 p 值 + p 值(类似方差分析),因此基本上来自 summary.lm 的输出. 问题是我想使用我自己的模型矩阵,而不是在调用 l
我建了一个 lm不使用 data= 的模型范围: m1 <- lm( mdldvlp.trim$y ~ gc.pc$scores[,1] + gc.pc$scores[,2] + gc.pc$sco
我是 R 的新手,我只是在学习 apply功能及其工作方式。我只想从 lm 中提取系数适合几年内产品颜色和品牌的变量 x。 我知道我可以创建一个 for 循环并按型号年份对数据进行子集化并拟合它,但我
如何计算 df 中存储在列中的多个变量的行向 lm()/系数? 我有这种数据(只是例子): set.seed(1) foo trialNumber Nr1 Nr2
我对在 ggplot2 中自动绘制模型很感兴趣。基于 discussion在 ggplot2 问题跟踪器上,我相信像下面这样的包装器应该可以工作。 geom_predict Warning: Com
我正在对多个属性(包括两个分类属性B和F)进行线性回归,但是我没有获得每个系数水平的系数值。 B具有9个级别,而F具有6个级别。当我最初运行模型(带有截距)时,我得到了8个B系数和5个F系数,我将其理
我一直试图弄清楚 subset R 中的参数 lm()功能有效。特别是以下代码对我来说似乎很可疑: data(mtcars) summary(lm(mpg ~ wt, data=mtcars))
我有以下数据框 > df df2 Economy ConditionA ConditionB ConditionC ConditionD 1 FRANCE 9
我正在使用来自包鼠标的男孩数据集的数据。当我对其中一个因子变量 (phb) 运行回归时,输出会显示这些因子,但给它们的名称与数据中的名称不同。我想知道为什么会这样。有没有办法纠正它? library(
通常,我和你(假设你不是机器人)很容易识别预测器是分类的还是定量的。例如,性别显然是分类的。您的最后一票可以分类。 基本上,我们可以轻松识别分类预测变量。但是当我们在 R 中输入一些数据时会发生什么,
我们从中得到了一个 lm 对象并想提取标准错误 lm_aaa<- lm(aaa~x+y+z) 我知道函数摘要、名称和系数。 但是,摘要似乎是手动访问标准错误的唯一方法。 你知道我怎么能输出se吗? 谢
我正在拟合一个模型来分解数据并进行预测。如果newdata中的predict.lm()包含模型未知的单个因子级别,则所有predict.lm()都会失败并返回错误。 有没有一种好方法可以让predic
我是一名优秀的程序员,十分优秀!