用于删除列的 R 代码说明
Posted
技术标签:
【中文标题】用于删除列的 R 代码说明【英文标题】:Explanation for R code used to delete column 【发布时间】:2019-06-20 01:37:31 【问题描述】:谁能告诉我以下用于有条件地删除数据框列的代码的逐段含义?
df2=df[,!names(df)%in%c("column")]
条件: column 是我要从数据框 df 中删除的列。 df2 是新的数据框。
【问题讨论】:
【参考方案1】:让我们分解一下:
df2=df[,!names(df)%in%c("column")]
df 是我们的数据框。 所以我们在 df 中选择不是“列”的列。
选择列如下:
df[,mycol]
names(df)
选择列名。
!
是一个伪造者(否定标记),它告诉我们从 df 的列名中选择不是“列”的列。
!names(df)%in%c("column")
然后我们将我们的选择分配给df2
(一个新的数据框)。
插图:
这会选择所有不是Species.
的列
iris[,!names(iris)%in%c("Species")]
Sepal.Length Sepal.Width Petal.Length Petal.Width
1 5.1 3.5 1.4 0.2
2 4.9 3.0 1.4 0.2
3 4.7 3.2 1.3 0.2
原来的列是什么?
names(iris)
[1] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width" "Species"
%in% 运算符 在这里得到了详尽的解决: The R %in% operator
【讨论】:
感谢您的回答。你能解释一下R中的%是什么吗?我还是不知道是什么。 这被视为%in%
,几乎(但不完全)等于“==”。它检查 A 是否在 B(A%in%B)
中。我已经添加了一个指向处理相同问题的问题的链接。以上是关于用于删除列的 R 代码说明的主要内容,如果未能解决你的问题,请参考以下文章