मैं एक data.frame df
है के लिए expand.grid करने के लिए और मुझे लगता है कि इस df
में हर पंक्ति दोहराया गया है चाहते हैं lengthTime
बार और कहा कि एक नया स्तंभ जोड़ दिया जाता है कि df
में प्रत्येक पंक्ति के लिए 1 से lengthTime
लिए मायने रखता है ।वैकल्पिक data.frames
मुझे पता है, यह बहुत जटिल लगता है, लेकिन जो मैं मूल रूप से चाहता हूं वह expand.grid
से df
पर लागू करना है। यहाँ एक बदसूरत समाधान नहीं है और मैं लग रहा है कि अधिकांश एक आसान समाधान हो है (हो सकता है यहां तक कि एक आधार-आर समारोह?):
df <- data.frame(ID = rep(letters[1:3], each=3),
CatA = rep(1:3, times = 3),
CatB = letters[1:9])
lengthTime <- 3
nrRow <- nrow(df)
intDF <- df
for (i in 1:(lengthTime - 1)) {
df <- rbind(df, intDF)
}
df$Time <- rep(1:lengthTime, each=nrRow)
मैंने सोचा था कि मैं सिर्फ expand.grid(df, 1:lengthTime)
इस्तेमाल कर सकते हैं, लेकिन यह काम नहीं करता। outer
या तो कोई भाग्य नहीं लाया। तो क्या कोई भी एक अच्छा समाधान जानता है?
मेरा वास्तव में जोरन से अलग नहीं है जो मुझे 40 सेकंड तक मारता है लेकिन मैं इसे छोड़ दूंगा क्योंकि यह थोड़ा और स्पष्ट है। –
पहले आओ, पहले सेवा करें, इसलिए मैंने उसका जवाब स्वीकार कर लिया ;-) लेकिन आप दोनों के लिए +1। यह एक बहुत साफ समाधान है! –