R 将每个变量存储到列表元素中
我有这个dfR 将每个变量存储到列表元素中,r,dplyr,tidyr,R,Dplyr,Tidyr,我有这个df Date <- c("2020-10-01", "2020-10-02", "2020-10-03", "2020-10-04", "2020-10-01", "2020-10-02", "2020-10-03", "2020-10-04", "2020-10-01&
Date <- c("2020-10-01", "2020-10-02", "2020-10-03", "2020-10-04",
"2020-10-01", "2020-10-02", "2020-10-03", "2020-10-04",
"2020-10-01", "2020-10-02", "2020-10-03", "2020-10-04")
Country <- c("USA", "USA", "USA", "USA",
"Mexico", "Mexico", "Mexico", "Mexico",
"Japan", "Japan", "Japan","Japan")
Value_A <- 1:12
Value_B <- 10:21
Date这是否有效:
df
Date Country Value_A Value_B
1 2020-10-01 USA 1 10
2 2020-10-02 USA 2 11
3 2020-10-03 USA 3 12
4 2020-10-04 USA 4 13
5 2020-10-01 Mexico 5 14
6 2020-10-02 Mexico 6 15
7 2020-10-03 Mexico 7 16
8 2020-10-04 Mexico 8 17
9 2020-10-01 Japan 9 18
10 2020-10-02 Japan 10 19
11 2020-10-03 Japan 11 20
12 2020-10-04 Japan 12 21
list <- df %>% split(df$Country)
list
$Japan
Date Country Value_A Value_B
9 2020-10-01 Japan 9 18
10 2020-10-02 Japan 10 19
11 2020-10-03 Japan 11 20
12 2020-10-04 Japan 12 21
$Mexico
Date Country Value_A Value_B
5 2020-10-01 Mexico 5 14
6 2020-10-02 Mexico 6 15
7 2020-10-03 Mexico 7 16
8 2020-10-04 Mexico 8 17
$USA
Date Country Value_A Value_B
1 2020-10-01 USA 1 10
2 2020-10-02 USA 2 11
3 2020-10-03 USA 3 12
4 2020-10-04 USA 4 13
df
日期国家/地区值\u A值\u B
1 2020-10-01美国1 10
2 2020-10-02美国2 11
3 2020-10-03美国3 12
4 2020-10-04美国4 13
5 2020-10-01墨西哥5 14
6 2020-10-02墨西哥6 15
7 2020-10-03墨西哥7 16
8 2020-10-04墨西哥8 17
9 2020-10-01日本9 18
10 2020-10-02日本10 19
11 2020-10-03日本11 20
12 2020-10-04日本12 21
列表百分比分割(df$国家)
列表
美元日本
日期国家/地区值\u A值\u B
9 2020-10-01日本9 18
10 2020-10-02日本10 19
11 2020-10-03日本11 20
12 2020-10-04日本12 21
美元墨西哥
日期国家/地区值\u A值\u B
5 2020-10-01墨西哥5 14
6 2020-10-02墨西哥6 15
7 2020-10-03墨西哥7 16
8 2020-10-04墨西哥8 17
$USA
日期国家/地区值\u A值\u B
1 2020-10-01美国1 10
2 2020-10-02美国2 11
3 2020-10-03美国3 12
4 2020-10-04美国4 13
您可以从基本R使用拆分.data.frame
df <- data.frame(Date = Date, Country = Country, Value_a = Value_A, Value_b= Value_B)
>split.data.frame(df,df$Country)
$Japan
Date Country Value_a Value_b
9 2020-10-01 Japan 9 18
10 2020-10-02 Japan 10 19
11 2020-10-03 Japan 11 20
12 2020-10-04 Japan 12 21
$Mexico
Date Country Value_a Value_b
5 2020-10-01 Mexico 5 14
6 2020-10-02 Mexico 6 15
7 2020-10-03 Mexico 7 16
8 2020-10-04 Mexico 8 17
$USA
Date Country Value_a Value_b
1 2020-10-01 USA 1 10
2 2020-10-02 USA 2 11
3 2020-10-03 USA 3 12
4 2020-10-04 USA 4 13
df split.data.frame(df,df$Country)
美元日本
日期国家/地区值\u a值\u b
9 2020-10-01日本9 18
10 2020-10-02日本10 19
11 2020-10-03日本11 20
12 2020-10-04日本12 21
美元墨西哥
日期国家/地区值\u a值\u b
5 2020-10-01墨西哥5 14
6 2020-10-02墨西哥6 15
7 2020-10-03墨西哥7 16
8 2020-10-04墨西哥8 17
$USA
日期国家/地区值\u a值\u b
1 2020-10-01美国1 10
2 2020-10-02美国2 11
3 2020-10-03美国3 12
4 2020-10-04美国4 13
df <- data.frame(Date = Date, Country = Country, Value_a = Value_A, Value_b= Value_B)
>split.data.frame(df,df$Country)
$Japan
Date Country Value_a Value_b
9 2020-10-01 Japan 9 18
10 2020-10-02 Japan 10 19
11 2020-10-03 Japan 11 20
12 2020-10-04 Japan 12 21
$Mexico
Date Country Value_a Value_b
5 2020-10-01 Mexico 5 14
6 2020-10-02 Mexico 6 15
7 2020-10-03 Mexico 7 16
8 2020-10-04 Mexico 8 17
$USA
Date Country Value_a Value_b
1 2020-10-01 USA 1 10
2 2020-10-02 USA 2 11
3 2020-10-03 USA 3 12
4 2020-10-04 USA 4 13