3
我有一個數據集(稱爲eyeData),在很短的版本是這樣的:循環在許多試驗中刪除重複[R
sNumber runningTrialNo wordTar
1 1 vital
1 1 raccoon
1 1 vital
1 1 accumulates
1 2 tornado
1 2 destroys
1 2 tornado
1 2 destroys
1 2 property
4 51 denounces
4 51 brings
4 51 illegible
4 51 frequently
4 51 brings
4 61 cerebrum
4 61 vital
4 61 knowledge
4 61 vital
4 61 cerebrum
我寫了一個循環來刪除所有副本(同對於每個單獨的審判wordTar列的話),這樣的數據是這樣的:
sNumber runningTrialNo wordTar
1 1 vital
1 1 raccoon
1 1 accumulates
1 2 tornado
1 2 destroys
1 2 property
4 51 denounces
4 51 brings
4 51 illegible
4 51 frequently
4 61 cerebrum
4 61 vital
4 61 knowledge
4 61 cerebrum
下面的代碼:
for (sno in eyeData$sNumber) {
for(trial in eyeData$runningTrialNo) {
ss <- subset(eyeData, sNumber == sno & runningTrialNo == trial)
ss.s <- ss[!duplicated(ss$wordTar), ]
}
}
但是,它運行了很長時間,所以我把它關閉了......因爲我是R環境新手,我的猜測是我在循環中做錯了。有沒有辦法改善我的循環,所以它會給我一個理想的輸出?
102分鐘的循環......的確很多。 %>%在你的代碼中引用了什麼?粘貼我的代碼? – MariKo
這是毫秒,所以102也不算太壞,只要你的數據不是太大。 '%>%'是'dplyr'使用的'magrittr'中的鏈運算符。它的工作方式是將前一個輸出作爲第一個參數傳遞給下一個函數 - 嘗試閱讀[dplyr vignette](http://cran.rstudio.com/web/packages/dplyr/vignettes/introduction.html))以獲取更多詳細信息 – jeremycg