数据
df <- data.frame(region = c("East Midlands", "NEYH"),
total = c(24, 46),
term = c(2, 4))
> df
region total term
1 East Midlands 24 2
2 NEYH 46 4
代码
terms <- do.call("c",
sapply(1:length(df$term),
function(x) rep(paste(c("Spring", "Summer"), c(2021:2026, 2021:2026)),
each = df$term[x])))
region <- do.call("c",
sapply(1:length(df$term),
function(x) rep(rep(df$region[x],
times = df$term[x]), times = 12)))
final_df <- cbind.data.frame(region, terms)
输出
> final_df
region terms
1 East Midlands Spring 2021
2 East Midlands Spring 2021
3 East Midlands Summer 2022
4 East Midlands Summer 2022
5 East Midlands Spring 2023
6 East Midlands Spring 2023
7 East Midlands Summer 2024
8 East Midlands Summer 2024
9 East Midlands Spring 2025
10 East Midlands Spring 2025
11 East Midlands Summer 2026
12 East Midlands Summer 2026
13 East Midlands Spring 2021
14 East Midlands Spring 2021
15 East Midlands Summer 2022
16 East Midlands Summer 2022
17 East Midlands Spring 2023
18 East Midlands Spring 2023
19 East Midlands Summer 2024
20 East Midlands Summer 2024
21 East Midlands Spring 2025
22 East Midlands Spring 2025
23 East Midlands Summer 2026
24 East Midlands Summer 2026
25 NEYH Spring 2021
26 NEYH Spring 2021
27 NEYH Spring 2021
28 NEYH Spring 2021
29 NEYH Summer 2022
30 NEYH Summer 2022
31 NEYH Summer 2022
32 NEYH Summer 2022
33 NEYH Spring 2023
34 NEYH Spring 2023
35 NEYH Spring 2023
36 NEYH Spring 2023
37 NEYH Summer 2024
38 NEYH Summer 2024
39 NEYH Summer 2024
40 NEYH Summer 2024
41 NEYH Spring 2025
42 NEYH Spring 2025
43 NEYH Spring 2025
44 NEYH Spring 2025
45 NEYH Summer 2026
46 NEYH Summer 2026
47 NEYH Summer 2026
48 NEYH Summer 2026
49 NEYH Spring 2021
50 NEYH Spring 2021
51 NEYH Spring 2021
52 NEYH Spring 2021
53 NEYH Summer 2022
54 NEYH Summer 2022
55 NEYH Summer 2022
56 NEYH Summer 2022
57 NEYH Spring 2023
58 NEYH Spring 2023
59 NEYH Spring 2023
60 NEYH Spring 2023
61 NEYH Summer 2024
62 NEYH Summer 2024
63 NEYH Summer 2024
64 NEYH Summer 2024
65 NEYH Spring 2025
66 NEYH Spring 2025
67 NEYH Spring 2025
68 NEYH Spring 2025
69 NEYH Summer 2026
70 NEYH Summer 2026
71 NEYH Summer 2026
72 NEYH Summer 2026
解释
我们根据给定的信息用sapply()
和复制术语和区域,然后用和rep()
连接得到的向量列表。do.call()
c()