如何在r中向数据框添加多列
您可以使用以下方法向 R 中的数据框添加多列:
方法一:向data.frame对象添加多列
df[c(' new_col1 ', ' new_col2 ', ' new_col3 ')] <- NA
方法2:向data.table对象添加多列
library (data.table)
df[, ':='(new_col1 = new_col1, new_col2 = new_col2, new_col3 = new_col3)]
以下示例展示了如何在实践中使用每种方法。
示例 1:向 data.frame 对象添加多列
假设我们在 R 中有以下数据框:
#define data frame df <- data. frame (A=c(4, 8, 10, 2, 15, 12, 7, 22), B=c(6, 3, 9, 7, 6, 8, 14, 10), C=c(10, 9, 4, 4, 3, 7, 10, 11)) #view data frame df ABC 1 4 6 10 2 8 3 9 3 10 9 4 4 2 7 4 5 15 6 3 6 12 8 7 7 7 14 10 8 22 10 11
我们可以使用以下语法将三个新列添加到包含每个 NA 值的数据框中:
#add three new columns to data frame
df[c(' D ', ' E ', ' F ')] <- NA
#view updated data frame
df
A B C D E F
1 4 6 10 NA NA NA
2 8 3 9 NA NA NA
3 10 9 4 NA NA NA
4 2 7 4 NA NA NA
5 15 6 3 NA NA NA
6 12 8 7 NA NA NA
7 7 14 10 NA NA NA
8 22 10 11 NA NA NA
三个具有所有 NA 值的新列已添加到数据框中。
示例 2:向 data.table 对象添加多列
假设我们在R中有如下数据表:
library (data.table) #create data table dt <- data. table (A=c(4, 8, 10, 2, 15, 12, 7, 22), B=c(6, 3, 9, 7, 6, 8, 14, 10), C=c(10, 9, 4, 4, 3, 7, 10, 11)) #view data table dt ABC 1:4 6 10 2:8 3 9 3:10 9 4 4:2 7 4 5:15 6 3 6:12 8 7 7:7 14 10 8:22 10 11
我们可以使用以下语法向数据表添加两个新列:
#define two columns to add
D = c(4, 5, 5, 4, 7, 8, 12, 10)
E = c(2, 2, 5, 7, 6, 5, 10, 13)
#add two columns to data table
dt[, ':='(D = D, E = E)]
#view updated data table
dt
A B C D E
1:4 6 10 4 2
2: 8 3 9 5 2
3:10 9 4 5 5
4:2 7 4 4 7
5:15 6 3 7 6
6:12 8 7 8 5
7:7 14 10 12 10
8:22 10 11 10 13
请注意,数据表中添加了两个新列。
其他资源
以下教程解释了如何在 R 中执行其他常见任务: