gpt4 book ai didi

r - 从多个t.test输出中获取某些结果以创建表

转载 作者:行者123 更新时间:2023-12-02 08:35:42 26 4
gpt4 key购买 nike

我已经进行了48次t检验(用手工编码而不是编写循环),并希望拼接出t.test的某些结果以创建我最感兴趣的东西的表格。

具体来说,对于这48个测试,我只想保留 p值置信区间以及x的平均值和y平均值,然后构建结果表。

除了最详细的答案here之外,是否有一种优雅,快捷的方法来完成此操作,其中我将参加所有48个测试,并按照ttest$p.value的方式获取所有三个所需的输出?也许是循环?

下面是一个t检验的编码输入的样本,然后是R传递的输出。

# t.test comparing means of Change_Unemp for 2005 government employment (ix)

lowgov6 <- met_res[met_res$Gov_Emp_2005 <= 93310, "Change_Unemp"]
highgov6 <- met_res[met_res$Gov_Emp_2005 > 93310, "Change_Unemp"]
t.test(lowgov6,highgov6,pool.sd=FALSE,na.rm=TRUE)

Welch Two Sample t-test

data: lowgov6 and highgov6
t = 1.5896, df = 78.978, p-value = 0.1159
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-0.1813909 1.6198399
sample estimates:
mean of x mean of y
4.761224 4.042000

最佳答案

将所有t检验保存到列表中:

tests <- list()
tests[[1]] <- t.test(lowgov6,highgov6,pool.sd=FALSE,na.rm=TRUE)
# repeat for all tests
# there are probably faster ways than doing all of that by hand

# extract your values using `sapply`
sapply(tests, function(x) {
c(x$estimate[1],
x$estimate[2],
ci.lower = x$conf.int[1],
ci.upper = x$conf.int[2],
p.value = x$p.value)
})

输出类似于以下内容:
                 [,1]        [,2]
mean of x 0.12095949 0.03029474
mean of y -0.05337072 0.07226999
ci.lower -0.11448679 -0.31771191
ci.upper 0.46314721 0.23376141
p.value 0.23534905 0.76434012

但是将有48列。如果您希望转置结果,则可以 t()结果。

关于r - 从多个t.test输出中获取某些结果以创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21840021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com