我有一个数据表格式的表。我需要在R中执行以下计算。
Table1:
Cty Pred Trend
Adams -9.193 -15.81
Alexander -1.143 3.01
Bond 5.95 -14.05
Boone 0.57 3.63
.
.
如果“Pred”和“Trend”列中的值在同一方向(即负数或正数)且值在值的+/- 5%范围内,我需要计算“Cty”的数量在“趋势”列中。
感谢任何帮助。
感谢。
答案 0 :(得分:0)
第一个条件检查Pred和Trend是否在同一方向。
第二个条件检查Pred在趋势值的5%范围内。
结果是满足两个条件的城市数量(假设没有重复的城市名称)。
sum(with(df, ((Pred>0) == (Trend>0)) & (abs((Trend-Pred)/Trend)<=0.05)))