如何从 r 中的数据框中删除列(附示例)


从 R 中的数据框中删除列的最简单方法是使用subset()函数,该函数使用以下基本语法:

 #remove columns var1 and var3
new_df <- subset(df, select = - c(var1, var3))

以下示例展示了如何在实践中使用以下数据框使用此函数:

 #create data frame
df <- data. frame (var1=c(1, 3, 3, 4, 5),
                 var2=c(7, 7, 8, 3, 2),
                 var3=c(3, 3, 6, 10, 12),
                 var4=c(14, 16, 22, 19, 18))

#view data frame
df

  var1 var2 var3 var4
1 1 7 3 14
2 3 7 3 16
3 3 8 6 22
4 4 3 10 19
5 5 2 12 18

示例 1:按名称删除列

以下代码显示如何按名称从数据框中删除列:

 #remove columns var1 and var3
new_df <- subset(df, select = - c(var1, var3))

#view updated data frame
new_df

  var2 var4
1 7 14
2 7 16
3 8 22
4 3 19
5 2 18

示例 2:按索引删除列

以下代码显示了如何按索引从数据框中删除列:

 #remove first and fourth columns
new_df <- subset(df, select = - c(1, 4))

#view updated data frame
new_df

  var2 var3
1 7 3
2 7 3
3 8 6
4 3 10
5 2 12

示例 3:从列表中删除列

以下代码显示如何从数据框中删除属于特定列表的列:

 #define list of columns to remove
remove_cols <- c(' var1 ', ' var4 ')

#remove columns in list
new_df = subset(df, select = ! ( names (df) %in% remove_cols))

#view updated data frame
new_df

  var2 var3
1 7 3
2 7 3
3 8 6
4 3 10
5 2 12

示例 4:删除范围内的列

下面的代码展示了如何从数据框中删除一定范围内的列:

 #remove columns in range of 1 to 3
new_df = subset(df, select = - c(1:3))

#view updated data frame
new_df

  var4
1 14
2 16
3 22
4 19
5 18

其他资源

如何在 R 中向数据框添加列
如何在 R 中重命名数据框列
如何在R中按列对数据框进行排序

添加评论

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