R を使用して、部門ごとに支出が最も多い上位 2 人の従業員のレポートを作成し、その部門の他の従業員の「その他」を追加する必要があります。たとえば、このようなレポートが必要です。
Dept. EmployeeId Expense
Marketing 12345 100
Marketing 12346 90
Marketing Others 200
Sales 12347 50 <-- There's just one employee with expenses
Research 12348 2000
Research 12349 900
Research Others 10000
つまり、支出額が最も多い上位 2 人の従業員に焦点を当ててデータを要約する必要があります。経費列の合計は、会社の経費の合計額である必要があります。
employeIds <- sample(1000:9999, 20)
depts <- sample(c('Sales', 'Marketing', 'Research'), 20, replace = TRUE)
expenses <- sample(1:1000, 20, replace = TRUE)
df <- data.frame(employeIds, depts, expenses)
# Based on that data, how do I build a table with the top 2 employees with the most expenses in each department, including an "Other" employee per department.
私はRが初めてで、これにアプローチする方法がわかりません。SQL では、RANK() 関数と JOIN を使用できたはずですが、ここではオプションではありません。