如何检查矩阵或数据框中是否存在列?

时间:2014-02-14 04:33:01

标签: r

有没有办法检查矩阵或data.frame中是否存在列?

例如:TableA

Name    Age    Address     Contact No.
Ben     12     CA           1234567

在处理行之前,如何检查“Gender”或“Age”列是否存在?

由于

1 个答案:

答案 0 :(得分:6)

我希望您意识到"Gender""Age"执行 存在所有行在数据框中?

一种简单的检查方法是获取数据框的名称,并将您不感兴趣的列与名称进行比较,以查看它们是否包含在该集合中。例如,根据您的问题,一些数据:

df <- data.frame(Name = "Ben", Age = 12, Address = "CA", ContactNo = 1234567)

请注意数据框names的{​​{1}}属性:

df

然后,您可以检查感兴趣的变量是否在数据框中的变量集中:

names(df)

> names(df)
[1] "Name"      "Age"       "Address"   "ContactNo"

对于矩阵,您需要c("Gender", "Age") %in% names(df) > c("Gender", "Age") %in% names(df) [1] FALSE TRUE 属性,通过colnames提取器函数访问,而不是colnames()属性和names