我有一個dataframe
列出studentnumber <- c(1,2,3.. nth)
和schoolnumber<- c(1,1,2,3,4,4)
所以瞳孔1是在學校1所,學生2是在學校1所,學生3是在學校3 ....如何通過學校創建平均ses - tapply函數錯誤?
我會爲每個學生和我社會經濟地位想要計算一個新的列,其中SES是實際SES減去特定學校的平均SES。這個功能顯然是:
mydata$meansocialeconomicstatus <- with(mydata, tapply(ses, schoolnumber, mean))
但是我收到一個錯誤詞,是因爲新列不重複取決於如果學校數量已經重複每個值。所以這給了我新的列中不匹配數據框的行數的差異。這是因爲每個手段只給予一次。
我的問題是,我可以添加什麼以使平均次數在新列中重複取決於學號?
'with(mydata,ave(ses,schoolnumber,FUN = mean))'? – lukeA
有50個或更多的警告(使用警告()看到第一個50):( – Rachel