'I want to make a variable of several repeating string values in R
I want to make a data frame that has a single variable with 345 entries as follows: entries 1:149 to be "2020", entries 150:297 to be "2021" and entries 298:345 to be "2022".
I am entirely not sure how to put this together. I feel like it is a simple problem but I have been at this for an hour with no progress. I would extremely appreciate any help!
Solution 1:[1]
You can use rep to repeat a string for a desired number of time.
data.frame(year = c(rep("2020", 149),
rep("2021", 297 - 150 + 1),
rep("2022", 345 - 298 + 1)))
Or set a dataframe with an empty column named year, and set row values accordingly.
df <- data.frame(year = "")
df[1:149,] <- "2020"
df[150:297, ] <- "2021"
df[298:345,] <- "2022"
Solution 2:[2]
You can use the times argument in rep to make this a bit easier:
df <- data.frame(year = as.character(rep(2020:2022, times = c(149, 148, 48))))
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | |
| Solution 2 | Allan Cameron |
