【发布时间】:2017-05-08 06:28:49
【问题描述】:
我有一个包含多列的 DT,我需要在 ifelse 中给出一个条件并相应地进行计算。我希望它按段分组进行计数/总和(计数)。这是DT
Segment Count Flag
A 23 Y
B 45 N
A 56 N
B 212 Y
我希望第四列作为基于标志的段总计数的计数,因此输出应该看起来像这样。对于标志 N,它是每段计数的份额。对于标志 Y,如果 No(N) 变为 Yes(Y),则计算收入百分比,在这种情况下是可以赚取的收入。我很抱歉,因为它很笨拙,但如果您有任何疑问,请在 cmets 中问我。
Segment Count Flag Rev Value
A 23 Y 34 ((56/23)*34)/(34+69)
B 45 N 48 45/(45+212)
A 56 N 23 56/(56+23)
B 212 Y 67 ((45/212)*67)/(67+12)
A 65 Y 69 ...
B 10 Y 12 ...
感谢任何帮助。谢谢!
【问题讨论】:
-
这是什么?您已第三次更改预期输出。请珍惜别人的时间
-
对不起。随着我对数据的推进,我开始知道需要什么。很抱歉浪费了您的时间,但这并没有白费。现在我知道做什么和怎么做。非常感谢!
-
@AbhishekSingh 请参阅asking followup questions的指南
-
感谢您的讽刺阿伦以及帮助。但它被留下了,因为有什么价值并不重要。
-
好吧,伙计,我在这里迷路了
B 45 N 48 45/(45+212); A 56 N 23 56/(56+23)'N' 的 212 和 23 有什么不同,或者就像每个元素都有特定的规则。我的问题是为什么不包括65
标签: r if-statement data.table