如何在 r 中向数据框添加列(附示例)


在 R 中向数据框中添加新列的常用方法有以下三种:

1.使用$运算符

 df$new <- c(3, 3, 6, 7, 8, 12)

2. 使用支撑物

 df[' new '] <- c(3, 3, 6, 7, 8, 12)

3.使用Cbind

 df_new <- cbind (df, new)

本教程提供了如何使用以下数据框在实践中使用每种方法的示例:

 #create data frame
df <- data. frame (a = c('A', 'B', 'C', 'D', 'E'),
                 b = c(45, 56, 54, 57, 59))

#view data frame
df

  ab
1 to 45
2 B 56
3 C 54
4 D 57
5 E 59

示例 1:使用 $ 运算符

以下代码显示如何使用 $ 运算符将列添加到数据框:

 #define new column to add
new <- c(3, 3, 6, 7, 8)

#add column called 'new'
df$new <- new

#view new data frame
df 

ab new
1 to 45 3
2 B 56 3
3 C 54 6
4 D 57 7
5 E 59 8

示例 2:使用括号

以下代码显示如何使用括号将列添加到数据框:

 #define new column to add
new <- c(3, 3, 6, 7, 8)

#add column called 'new'
df[' new '] <- new

#view new data frame
df 

  ab new
1 to 45 3
2 B 56 3
3 C 54 6
4 D 57 7
5 E 59 8

示例 3:使用 Cbind

以下代码演示了如何使用cbind函数( column-bind的缩写)向数据框添加列:

 #define new column to add
new <- c(3, 3, 6, 7, 8)

#add column called 'new'
df_new <- cbind (df, new)

#view new data frame
df_new

  ab new
1 to 45 3
2 B 56 3
3 C 54 6
4 D 57 7
5 E 59 8

实际上,您可以使用 cbind 函数一次添加多个新列:

 #define new columns to add
new1 <- c(3, 3, 6, 7, 8)
new2 <- c(13, 14, 16, 17, 20) 

#add columns called 'new1' and 'new2'
df_new <- cbind (df, new1, new2)

#view new data frame
df_new

  ab new1 new2
1 to 45 3 13
2 B 56 3 14
3 C 54 6 16
4 D 57 7 17
5 E 59 8 20

奖励:定义列名称

向数据框中添加一列或多列后,可以使用colnames()函数指定新数据框的列名称:

 #create data frame
df <- data. frame (a = c('A', 'B', 'C', 'D', 'E'),
                 b = c(45, 56, 54, 57, 59),
                 new1 = c(3, 3, 6, 7, 8),
                 new2 = c(13, 14, 16, 17, 20))

#view data frame
df

  ab new1 new2
1 to 45 3 13
2 B 56 3 14
3 C 54 6 16
4 D 57 7 17
5 E 59 8 20

#specify column names
colnames (df) <- c('a', 'b', 'c', 'd')

#view data frame
df

  abcd
1 to 45 3 13
2 B 56 3 14
3 C 54 6 16
4 D 57 7 17
5 E 59 8 20

您可以在此处找到更多 R 教程。

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注