如何比较 3 组数据以理清其中 2 组数据如何影响第三组数据? [关闭]

Posted

技术标签:

【中文标题】如何比较 3 组数据以理清其中 2 组数据如何影响第三组数据? [关闭]【英文标题】:How to compare a 3 sets of data in order to sort out how 2 of these data influence the third one? [closed] 【发布时间】:2018-05-01 07:15:09 【问题描述】:

我有 3 个这样的数据集:

有一个工具可以说去除中最重要的变量是什么?是pH值还是剂量?我在考虑 PCA(主成分分析),但我有点迷茫

【问题讨论】:

我将从一个简单的线性模型开始。但为了做到这一点,您必须提出假设并进行测试。 @Mouad_S 你提出的线性模型怎么样? PCA 将是一种非常复杂的方法,它主要用于不同类型的目标。当您说“重要”变量时,您必须更加具体。您可以找出哪个变量与Removal 的相关性更高,或者哪个变量可以最好地预测Removal。运行一个回归模型,看看哪个是统计显着的预测变量。或者运行一个更复杂的模型(如随机森林)并获得每个变量的重要性。有很多方法,因为您的问题非常广泛。 your_model <- lm( Removal ~ Dosage + Ph, data = your_data_frame); summary(your_model) 请不要发布图片。然后没有人可以轻松地将数据复制并粘贴到他们的会话中。 【参考方案1】:

这里有一些事情可以尝试。

从图中可以清楚地看出,剂量(第 2 列)与去除(第 3 列)的关系比与 pH 值(第 1 列)的关系更密切。

此外,剂量与去除的相关性为 61%,而 pH 的相关性仅为 -14%。

这两个变量在 lm 汇总输出中都没有统计学意义,可能是因为数据量小。

基于 AIC 的逐步回归选择 Removal ~ Dosage 模型。

(图后续)

matplot(scale(DF), type = "o")

cor(DF)
##                 pH    Dosage    Removal
## pH       1.0000000 0.0000000 -0.1418573  <-- -14%
## Dosage   0.0000000 1.0000000  0.6091517  <-- 61%
## Removal -0.1418573 0.6091517  1.0000000

summary(lm(Removal ~., DF))

## Call:
## lm(formula = Removal ~ ., data = DF)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -15.5556  -7.0556  -4.8889   0.7778  25.7778 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)
## (Intercept)   69.056     39.047   1.769    0.127  
## pH            -2.833      6.362  -0.445    0.672  <-- not significant
## Dosage        12.167      6.362   1.912    0.104  <-- not significant
## 
## Residual standard error: 15.58 on 6 degrees of freedom
## Multiple R-squared:  0.3912,    Adjusted R-squared:  0.1883 
## F-statistic: 1.928 on 2 and 6 DF,  p-value: 0.2257

fm <- step(lm(Removal ~., DF))
## ...snip...

fm
## Call:
## lm(formula = Removal ~ Dosage, data = DF)
## 
## Coefficients:
## (Intercept)       Dosage  
##       52.06        12.17  

注意:可重现形式的输入数据为:

DF <- structure(list(pH = c(5, 5, 5, 6, 6, 6, 7, 7, 7), Dosage = c(0L, 
1L, 2L, 0L, 1L, 2L, 0L, 1L, 2L), Removal = c(50, 60, 70, 50, 
90, 95, 50, 55, 58)), .Names = c("pH", "Dosage", "Removal"), row.names = c(NA, 
-9L), class = "data.frame")

【讨论】:

似乎Dosage 应该被视为factor 也许或者也许只是意味着没有药物,标准剂量和标准剂量的两倍。另请注意,Removal ~ factor(Dosage) 的 AIC 比 Removal ~ Dosage 更差。 有效点我的朋友

以上是关于如何比较 3 组数据以理清其中 2 组数据如何影响第三组数据? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

SPSS分析数据的稳定性

EXCEL如何将多组数据画在一张图上,图例成分组效果(见附图)

如何快速创建一组用户默认值?

方差是啥意思,举例,简单点!!!!

如何根据列组前缀替换列组的空白?

如何比较 2 个数组中的值以过滤掉元素