- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我经常有数据,我想将一个变量级别的值与所有其他级别变量的值进行比较。每次我编写代码来做到这一点时,我都希望它更容易。下面是问题的一个例子:
假设我想比较任何切工钻石的平均成本与最佳切工钻石的平均成本。为了公平起见,我想针对每个清晰度分别执行此操作。
让我们检查一下我们有足够的数据:
> with(diamonds,table(cut,clarity))
clarity
cut I1 SI2 SI1 VS2 VS1 VVS2 VVS1 IF
Fair 210 466 408 261 170 69 17 9
Good 96 1081 1560 978 648 286 186 71
Very Good 84 2100 3240 2591 1775 1235 789 268
Premium 205 2949 3575 3357 1989 870 616 230
Ideal 146 2598 4282 5071 3589 2606 2047 1212
> claritycut<-ddply(diamonds,.(clarity,cut),summarize,price=mean(price))
> claritycut
clarity cut price
1 I1 Fair 3703.533
2 I1 Good 3596.635
3 I1 Very Good 4078.226
4 I1 Premium 3947.332
5 I1 Ideal 4335.726
6 SI2 Fair 5173.916
7 SI2 Good 4580.261
8 SI2 Very Good 4988.688
9 SI2 Premium 5545.937
10 SI2 Ideal 4755.953
...
clarity variable ratio
1 I1 Fair 0.8541899
2 I1 Good 0.8295348
3 I1 Very Good 0.9406098
4 I1 Premium 0.9104200
5 I1 Ideal 1.0000000
6 SI2 Fair 1.0878822
7 SI2 Good 0.9630586
8 SI2 Very Good 1.0489356
9 SI2 Premium 1.1661043
10 SI2 Ideal 1.0000000
...
> claritycutideal <- join(subset(claritycut,cut!="Ideal"),summarize(subset(claritycut,cut=="Ideal"),Ideal=price,clarity))
> print(claritycutideal)
Joining by: clarity
clarity cut price Ideal
1 I1 Fair 3703.533 4335.726
2 I1 Good 3596.635 4335.726
3 I1 Very Good 4078.226 4335.726
4 I1 Premium 3947.332 4335.726
5 SI2 Fair 5173.916 4755.953
6 SI2 Good 4580.261 4755.953
7 SI2 Very Good 4988.688 4755.953
8 SI2 Premium 5545.937 4755.953
...
> mutate(claritycutideal,ratio=price/Ideal)
> cast(claritycut,clarity~cut)
Using clarity, cut as id variables
clarity Fair Good Very Good Premium Ideal
1 I1 3703.533 3596.635 4078.226 3947.332 4335.726
2 SI2 5173.916 4580.261 4988.688 5545.937 4755.953
3 SI1 4208.279 3689.533 3932.391 4455.269 3752.118
4 VS2 4174.724 4262.236 4215.760 4550.331 3284.550
...
> cast(claritycut,clarity~cut,subset=cut=="Ideal")
> valuevars=function(x)x[!names(x)%in%attr(x,"idvars")]
> melt(ddply(cast(claritycut,clarity~cut),.(clarity),
function(x)valuevars(x)/x$Ideal))
最佳答案
我不确定这是否足够整洁,但有两个衬里:
# from your code
claritycut <- ddply(diamonds,.(clarity,cut),summarize,price=mean(price))
# 1 do that work
transform(merge(claritycut, subset(claritycut, cut=="Ideal"), by="clarity"),
ratio = price.x / price.y)
# 2 another way
ddply(claritycut, .(clarity),
function(x) data.frame(cut=x$cut,
rate=x$price / subset(x, cut == "Ideal")$price))
# 3 another way
ddply(claritycut, .(clarity),
summarize, cut=cut, rate=price / price[cut == "Ideal"])
ddply(diamonds, .(clarity),
function(x) transform(ddply(x, .(cut),
summarize, rate=mean(price)),
rate=rate/mean(subset(x, cut=="Ideal")$price)))
关于与一个级别相比, reshape Actor 阵容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6771202/
我经常有数据,我想将一个变量级别的值与所有其他级别变量的值进行比较。每次我编写代码来做到这一点时,我都希望它更容易。下面是问题的一个例子: 假设我想比较任何切工钻石的平均成本与最佳切工钻石的平均成本。
Add.java public class Add implements Value, Reducible{ Value left; Value right; public Add(Value lef
我正在为参数化事件编写一个简单的事件系统,它使用从类到以该类作为参数的处理程序集的Map。我的理解是I can't define that relationship between key and v
我正在浏览“Multiple Inheritance for C++ by Bjarne Stroustrup, Published in the May 1999 issue of "The C/C
我正在编写一个程序,以使用背包解决方案找到最佳的 MLB 阵容。为此,我传入了球员数据,其中包含球员计算出的值(value)和薪水。就背包问题而言,薪水将是我的“重量”。 我的问题不是能够选择球员,而
食物语宫保鸡丁 获得方式 1、玩家通过限时食魂召唤活动中抽取的方式获得宫保鸡丁。 2、玩家通过主线关卡有几率掉落不同品质的宫保鸡丁。 3、玩家可以使用100个宫保鸡丁信物兑换宫保鸡丁食魂。
我正在尝试设置一个 SQL 数据库来记录游戏中发生的 3 人阵容。我现在的结构是: 玩家 玩家ID玩家姓名 阵容 阵容ID 阵容_球员 阵容ID(外键)玩家ID(外键) 我想找到一种快速方法来检查特定
如何将标题图像与导航栏对齐。我试过做一个固定的位置,但它会导致灾难。我希望它们像在主题演示中一样排列。我确实增加了标题宽度以将文本放在一行中。 http://dev.urbandesigninnova
我有以下界面 public interface ITransform { V convert(T object) throws Exception; } 我有一个类,Class1,它使用此接口(int
鉴于 2 个相互了解的 GADT 代数和 2 个相互递归的解释器,我遇到了必须从类型 A 转换为类型 h String = { hList match { case Kv
我是一名优秀的程序员,十分优秀!