我现在只是跳进R,所以我可能没有使用正确的术语,请耐心等待。
我有一张表格,显示具有特定发动机尺寸的汽车数量:
Engine Count
---------------
1800 20
1900 80
2000 40
所以基本上我有140辆汽车(观察)。当我打电话给summary(cars)
时,我会得到每列的个别统计数据,但是如何根据计数的比例得出引擎大小的中位数和平均值?
感谢。
答案 0 :(得分:7)
cars <- data.frame(Engine=c(1800, 1900, 2000),
Count=c(20, 80, 40))
cars
# Engine Count
# 1 1800 20
# 2 1900 80
# 3 2000 40
mean(rep(cars$Engine, cars$Count))
# [1] 1914.286
weighted.mean(x=cars$Engine, w=cars$Count)
# [1] 1914.286
median(rep(cars$Engine, cars$Count))
# [1] 1900