これは、1 人の顧客の顧客注文データがどのように見えるかです。
order_no customer_id product amount order_total
23 1 A 100 100
24 1 A 100 300
24 1 B 100 300
24 1 C 100 300
25 1 B 100 100
26 1 A 100 200
26 1 B 100 200
新しい列で各顧客の平均注文サイズを計算したいので、この顧客の場合、175 = (100 + 300 + 100 + 200) / 4 になります。
order_no customer_id amount order_total avg_order_size
23 1 100 100 175
24 1 100 300 175
24 1 100 300 175
24 1 100 300 175
25 1 100 100 175
26 1 100 200 175
26 1 100 200 175
私はこれのいくつかのバージョンを使用しようとしましたが、運がありません:
customer_stats <- data.table(customer_stats)[, avg_order_size := mean(order_total), by=list(order_no, customer_id)]
mean
私が本当にする必要があるのは、各order_no から 1 行だけを選択するorder_no[1]
ことby=(customer_id)
です。これをワンステップで実行し、作成をスキップする方法があれば、order_total
それはさらに良いことです。