如果数据集具有混合变量:数字和分类,除了摘要(数据集)之外,还有一种方法可以对其进行汇总,其中每个类别的计数包含在分类变量中,均值包括sd用于数值变量?
当前我在检查每列是数字还是分类后编写代码片段来生成列表。但是更简单的功能将是有用的。
一个例子可能是data.frame(v1 = c(1:3),v2 = c(" a"," b"," b" )),所需的输出是:
V1,输入(num / cat),mean(v1),sd(v1) V2,类型(num / cat),a,count(a),b,count(b)
答案 0 :(得分:1)
我认为你在'Hmisc'包中寻找函数describe()
。有关详细信息,请参阅the documentation。
答案 1 :(得分:0)
是的,我正在查看表格的分类和平均值+ sd的数值变量。对于研究论文中的描述性统计,人们通常会报告以下内容。
我写了以下内容:
agg_function <- function(data_agg)
{
desc_list <- list()
for(j in 1:ncol(data_agg))
{
if(is.factor(data_agg[,j]))
{
desc_list[[j]] <- list(Variable = colnames(data_agg) [j],table(data_agg[,j])) ## Table of counts of labels of categorical variables
}
else
{
desc_list[[j]] <- data.frame(Variable = colnames(data_agg)[j],Mean=mean(data_agg[,j],na.rm=T),SD = sd(data_agg[,j],na.rm=T)) ## First and second moments of numerical variables
}
}
return(desc_list)
}
但是有更有效的解决方案吗?