各位大大好,
假如 df 有以下数据,
| index | name | amount | 
| 1 | A | 10 | 
| 2 | B | 14 | 
| 3 | C | 3 | 
| 4 | A | 4 | 
| 5 | A | 15 | 
| 6 | C | 9 | 
| 7 | B | 12 | 
| 8 | B | 8 | 
| 8 | C | 6 | 
| 9 | A | 7 | 
| 10 | B | 8 | 
| 11 | C | 10 | 
| 12 | A | 13 | 
| 13 | B | 14 | 
| 14 | C | 8 | 
| 15 | A | 12 | 
| 16 | C | 9 | 
| 17 | A | 6 | 
| 18 | C | 10 | 
| 19 | A | 3 | 
df <- data.frame(index = 1:20, name = c("A", "B", "C", "A", "A", "C", "B", "C", "A", "B", "C", "A", "A", "A", "C", "B", "C", "A", "B", "C"), amount = c(10,14,3,4,15,9,12,6,7,8,10,13,12,6,8,8,9,3,14,10))
| index | name | amount | last3avg | 
| 1 | A | 10 | NA | 
| 2 | B | 14 | NA | 
| 3 | C | 3 | NA | 
| 4 | A | 4 | NA | 
| 5 | A | 15 | 9.667 | 
| 6 | C | 9 | NA | 
| 7 | B | 12 | NA | 
| 8 | B | 8 | 11.333 | 
| 8 | C | 6 | 6.000 | 
| 9 | A | 7 | 8.667 | 
| 10 | B | 8 | 9.333 | 
| 11 | C | 10 | 8.333 | 
| 12 | A | 13 | 11.667 | 
| 13 | B | 14 | 10.000 | 
| 14 | C | 8 | 8.000 | 
| 15 | A | 12 | 10.667 | 
| 16 | C | 9 | 9.000 | 
| 17 | A | 6 | 10.333 | 
| 18 | C | 10 | 9.000 | 
| 19 | A | 3 | 7.000 | 
如何計出, A,B,C "近三次"平均amount, 不足3次出na值