【发布时间】:2017-04-24 22:16:34
【问题描述】:
我一直在尝试自己,现在在网上搜索了一段时间,stackoverflow 没有成功。我有一个数据框,我从应用条件和选择投影中提取了该数据框,但未能检索到聚合输出。
数据框mydf:
mydf = list()
mydf = cbind(mydf,
c("New York", "New York", "San Francisco"),
c(4000, 7600, 2500),
c("Bartosz", "Damian", "Maciej"))
mydf = as.data.frame(mydf)
colnames(mydf) = c("city","salary","name")
让我们假设返回的数据帧的给定部分:
subset(mydf, city == "New York", select = c(salary, name))
返回一个数据框,例如:
salary name
9 4000 Bartosz
10 7600 Damian
现在我需要根据给定的薪水计算sum,avg 并从上述数据框中选择薪水最低的员工,最好通过修改上述代码使用单行(我猜这是可能的) , 使其返回:
sum: 11600
avg: 5800
至少:4000 巴托兹
我已经尝试过 (1)
subset(mydf, city == "New York", select = sum(salary))
或 (2)
x = subset(mydf, city == "New York", select = salary)
min(x)
还有更多的组合只会产生错误,说明汇总函数仅在数据帧上定义,所有变量都是数字 (2) 或与第一个代码相同的输出,但没有 sum (1)
【问题讨论】: