R 将每个变量存储到列表元素中

R 将每个变量存储到列表元素中,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&

我有这个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", "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