跳至主要内容

在 R 中创建列表

使用 DataCamp《R 入门》课程的材料练习 R 中的列表。
· 3分钟 阅读

使用 AI 探索

如果您想参加我们的免费《R 入门》课程,请访问此链接。

创建列表

让我们创建第一个列表!要构建列表,您可以使用函数 list():

my_list <- list(comp1, comp2 ...)

传递给 list 函数的参数就是列表的各个组件。请记住,这些组件可以是矩阵、向量、其他列表等。

练习说明

构建一个名为 my_list 的列表,将变量 my_vector、my_matrix 和 my_df 作为列表组件包含其中。


# Vector with numerics from 1 up to 10
        my_vector <- 1:10

        # Matrix with numerics from 1 up to 9
        my_matrix <- matrix(1:9, ncol = 3)

        # First 10 elements of the built-in data frame mtcars
        my_df <- mtcars[1:10,]

        # Construct list with these different elements:
        my_list <-

创建命名列表

做得好,继续加油!

就像待办清单一样,您不希望忘记或不清楚列表各组件代表什么。因此,应该给它们起上名称:

my_list <- list(name1 = your_comp1,
                name2 = your_comp2)

这样就创建了一个包含命名组件的列表,组件名为 name1、name2,以此类推。如果您想在创建列表之后再给组件命名,可以像为向量命名那样使用 names() 函数。以下命令与上面的赋值完全等价:

my_list <- list(your_comp1, your_comp2)
names(my_list) <- c("name1", "name2")

练习说明

  • 修改上一个练习(见编辑器)中的代码,为组件添加名称。为 my_vector 使用名称 vec,为 my_matrix 使用名称 mat,为 my_df 使用名称 df。
  • 打印 my_list,以便查看输出。

# Vector with numerics from 1 up to 10
        my_vector <- 1:10

        # Matrix with numerics from 1 up to 9
        my_matrix <- matrix(1:9, ncol = 3)

        # First 10 elements of the built-in data frame mtcars
        my_df <- mtcars[1:10,]

        # Adapt list() call to give the components names
        my_list <- list(my_vector, my_matrix, my_df)

        # Print out my_list

创建命名列表(2)

作为一名影迷(还记得您在 LucasFilms 的工作吗),您决定用列表来存储优秀电影的信息。

先为电影“The Shining”(闪灵)创建一个列表。我们已经在您的 R 工作区中创建了变量 mov、act 和 rev。您可以在控制台中查看它们。

练习说明

完成右侧代码以创建 shining_list;它包含三个元素:

  • moviename:包含电影标题的字符字符串(保存在 mov 中)
  • actors:包含主要演员姓名的向量(保存在 act 中)
  • reviews:一个数据框,其中包含一些影评(保存在 rev 中)

请不要忘记相应地为列表组件命名(名称分别为 moviename、actors 和 reviews)。


# The variables mov, act and rev are available

        # Finish the code to build shining_list
        shining_list <- list(moviename = mov)


如果您想从本课程中学习更多内容,请访问此链接。

查看我们的R 中的数据类型教程。

主题