我需要创建一个花哨的表并将其导出为png。我在R中尝试使用表格包。我需要分组" variacion"由代理人组成的团队(" agentes")与其他人相比具有正变化。我想要平均值,sd和满足这些条件的代理人数
我的表是:
agente mes1 mes2 variacion
1 a1 0.50 0.60 0.20000000
2 a2 0.70 0.65 -0.07142857
3 a3 0.60 0.75 0.25000000
4 a4 0.80 0.60 -0.25000000
5 a5 0.78 0.90 0.15384615
我的输出应该是(包括格式):
您可以通过以下方式获得这些数字:
sd(t_agentes1$variacion[t_agentes1$variacion<=0])
结果是表sd中的最后一个数字:0.126
所以在表库中:
library(tables)
X<-t_agentes1$variacion
latex( tabular( (X > 0) + (X < 0) + 1
+ ~ ((n = 1) + X*(mean + sd + length)) ) )
但我收到错误:
二元运算符的非数字参数
当我尝试包的第一个例子时,我得到了同样的错误
表格((物种+ 1)〜(n = 1)+格式(数字= 2)* + +(Sepal.Length + Sepal.Width)*(mean + sd),data = iris) e [[3]]:下标超出范围
时出错
我真的不明白这个包的参数。有没有办法进行分组?我真的迷失了,所以任何帮助都会非常感激。感谢。
答案 0 :(得分:1)
X <- read.table(header = TRUE, text="agente mes1 mes2 variacion
1 a1 0.50 0.60 0.20000000
2 a2 0.70 0.65 -0.07142857
3 a3 0.60 0.75 0.25000000
4 a4 0.80 0.60 -0.25000000
5 a5 0.78 0.90 0.15384615")
X <- within(X, variation <- factor(variacion > 0, levels = c(TRUE, FALSE),
labels = c('variation > 0',
'variation <= 0')))
library(tables)
# latex(
# tabular(Heading() * variation ~
# Justify(l) * (Heading() * Format(digits = 2) * variacion * (mean + sd) + (number = (n = 1))),
# data = X))
latex(
tabular(Heading() * variation ~
Justify(l) * (Heading() * variacion * (Format(digits = 2) * mean + Format(digits = 2) *sd) + (number = (n = 1))),
data = X))
# mean sd number
# variation $>$ 0 0.20 0.048 3
# variation $\\leq$ 0 -0.16 0.126 2
给我
答案 1 :(得分:0)
没有美化结果:
tabular((X > 0) + (X < 0) ~ mean*X + sd*X + length*X)