📜  R中的DataFrame操作(1)

📅  最后修改于: 2023-12-03 14:47:11.341000             🧑  作者: Mango

R中的DataFrame操作

在R中,DataFrame是一个非常常用的数据类型。它类似于 Excel 表格,其中每一列可以是不同的数据类型。DataFrame取代了矩阵和数组,成为了数据科学家和统计学家处理数据的首选数据结构之一。本文将为大家介绍DataFrame的常用操作。

创建DataFrame

可以使用 data.frame() 函数来创建DataFrame。在创建的时候,可以指定每一列的名字和初始数据。

df <- data.frame(name = c("John", "Mike", "Lisa"),
                 age = c(20, 25, 30),
                 married = c(FALSE, TRUE, TRUE))

在上面的代码中,我们创建了一个DataFrame,其中包含了三列数据: name, agemarried

访问DataFrame中的数据

我们可以使用列名或列索引来访问DataFrame中的数据。例如,要访问名字列,可以使用以下方式:

df$name

要访问第二行的数据,可以使用以下方式:

df[2,]

要访问第一列和第三列,可以使用以下方式:

df[,c(1,3)]
添加和删除列

添加列时,我们可以使用 $ 或者 []。例如,要添加一个新的 height 列:

df$height <- c(175, 180, 165)

要删除列,则可以使用 $[]。例如,我们要删除 married 列:

df$married <- NULL

或者使用 []:

df <- df[,-3]

在上面的代码中,我们使用 NULLmarried 列设置为 NULL。我们还可以使用索引来指定要删除的列。

筛选数据

有时候,我们需要根据某些条件或者对数据进行筛选,R提供了一些方便的方式来筛选数据。例如,要筛选所有年龄大于25岁的行,可以使用以下代码:

df[df$age > 25,]
排序数据

R提供了非常方便的方式来对数据进行排序。可以使用 order() 函数和 dplyr 包来进行数据排序。例如,我们可以按照 age 列进行升序排序:

df <- df[order(df$age, decreasing = FALSE),]

或者使用 dplyr 包的 arrange() 函数:

library(dplyr)
df <- arrange(df, age)
统计数据

统计数据是数据科学家和统计学家的重要任务。R提供了许多内置的函数和包来进行统计数据的操作。例如,我们可以使用内置的函数 mean() 来计算平均年龄:

mean(df$age)

我们还可以使用 dplyr 包来进行其他统计计算:

library(dplyr)
df %>%
  summarize(avg_age = mean(age), max_age = max(age))

到此,我们已经学习了DataFrame的常用操作,这是R编程的必备技能之一。