聽起來像是你需要的功能ave
嘗試尋找
?ave
例如嘗試
ave(InsectSprays$count,InsectSprays$spray)
(InsectSprays帶有R,應該工作,因爲它代表)或
with(InsectSprays, ave(count,spray))
因此,與您的數據做相當於並將其分配給z
下面是它做什麼(嘗試粘貼前兩行然後檢查InSp
):
InSp <- InsectSprays
InSp$ave <- with(InSp, ave(count,spray))
head(InSp,15)
count spray ave
1 10 A 14.50000
2 7 A 14.50000
3 20 A 14.50000
4 14 A 14.50000
5 14 A 14.50000
6 12 A 14.50000
7 10 A 14.50000
8 23 A 14.50000
9 17 A 14.50000
10 20 A 14.50000
11 14 A 14.50000
12 13 A 14.50000
13 11 B 15.33333
14 17 B 15.33333
15 21 B 15.33333
功能ave
有許多其他用途,因爲您可以提供一個函數作爲參數(然後,而不是計算意味着它將使用您希望的任何其他函數組)。對於它的特別細微的使用,請參見this answer。
[閱讀](http://stackoverflow.com/q/5963269),以瞭解如何使一個很好的問題。你必須更加努力地解釋你到目前爲止所做的工作,給出一些樣本數據並解釋你想要的結果。好問題更有可能得到回答。 – 2013-05-14 16:31:44