0
我(樣品)的數據結構如下:如何通過分組變量來計算一列相對於另一列的百分比?
Individ <- data.frame(Participant = c("Bill", "Bill", "Bill", "Bill", "Bill", "Bill", "Bill", "Bill", "John", "John", "John", "John",
"Harry", "Harry", "Harry", "Harry","Harry", "Harry", "Harry", "Harry", "Paul", "Paul", "Paul", "Paul"),
Time = c(1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4, 1, 2, 3, 4),
Condition = c("Placebo", "Placebo", "Placebo", "Placebo", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr",
"Placebo", "Placebo", "Placebo", "Placebo", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr", "Expr"),
Power = c(400, 250, 180, 500, 300, 450, 600, 512, 300, 500, 450, 200, 402, 210, 130, 520, 310, 451, 608, 582, 390, 570, 300, 200))
我使用計算下的每個Condition
的平均工作由每個Participant
完成以下任務:
IndividAvgWork <- ddply(Individ, c("Participant", "Condition"), summarise,
Power = mean(Power))
我現在要計算Power
執行在data.frame Individ
中的每分鐘Time
,作爲IndividAvgWork
中的總平均功率的百分比。這必須在每個Condition
下的每個Participant
完成。有沒有一個快速的方法來做到這一點?
我的預期輸出的一個例子,爲比爾安慰劑狀況期間,將是:(採樣功率/平均功率)* 100:
RelPower = c(120.30, 75.19, 54.14, 150.38)
上面被計算。
作爲工作例子,比爾的Power
在1安慰劑Condition
下一個Time
是400我再由平均功率安慰劑Condition
是332.50和存儲在IndividAvgWork
下分此爲比爾。將這些值代入給出:(400/332.5)* 100
謝謝。
謝謝。你知道我爲什麼在我的問題旁邊有-1嗎? – user2716568
它被拒絕了,因爲你原來的問題不清楚。在編輯之後,它再次被投票否定'-1'。 – Gopala