MyDataframe is a dataframe which has 7 columns now of the character, numeric and date data types. The dataframe has 300,000 rows.
I need to have a vector as a new field for each row of the data table. I need the vector to have 1440 zeros initially. Let's call this MyVector.
If I try this:
MyDataframe$MyVector = numeric(1440)
data.frame documentation is very helpful. As you see, a
data.frame is a special type of
list. It can have any kind of object in it: others lists (such as models), data.frames or even vectors. In those cases, the data.frame is known as nested data.frame, that's the term you need to search for.
You can produce it like this:
df <- data.frame(a = 1:3, b = letters[1:3]) df$vectors <- list(numeric(3), numeric(3), numeric(3)) str(df) 'data.frame': 3 obs. of 3 variables: $ a : int 1 2 3 $ b : Factor w/ 3 levels "a","b","c": 1 2 3 $ vectors:List of 3 ..$ : num 0 0 0 ..$ : num 0 0 0 ..$ : num 0 0 0