我知道如何將數據集完全隨機地分成一半沒有問題,但是雖然我理解如何去實現我想要做的事,但「邏輯上」這裏似乎在拋棄我。將數據集拆分爲一半,隨機選取所選變量的每個級別的一半
所以我有一個數據集,其中包含120個級別的分類變量Title
。每個級別有50個觀測值。我想將數據集分成兩半,其中半集A和半集B分別得到每個級別的50個觀測值中的25個觀測值。 (這是EFA和CFA)
我認爲這將涉及一個循環通過120級和sample(nrow(subset(dataset,title=index), 25)
循環,但我有點失去了這一點。我想到的幾乎沒有什麼潛在的解決方案是隨機選擇一個半值A的25,但帶有替換,所以當我再次運行半值B時,它有一些重疊。
示例數據:
set.seed(1)
dataset = data.frame(id = rep(1:120, 50), v = rnorm(120*50))
感謝一如既往,大家好。
雖然你的描述是好的,這是最好的也可以用代碼做一個可重現的例子,比如'set.seed(1); DF = data.frame(id = rep(1:120,50),v = rnorm(120 * 50)) – Frank