如何比较R中列和行中的值?

时间:2018-01-30 00:49:37

标签: r matrix

我正在清理我的数据集,并尝试匹配第一行和第一列的名称。

例如,

  X1 X2 X3 X4 X7
X1 1  3  4  5  1
X2 1  1  2  3  4
X3 1  1  2  4  5 
X6 4  2  3  2  3

在这种情况下,我想比较X1,X2,X3,X4,X7(第一行)和X1,X2,X3,X6(第一列)以查看某些数字是否在行中但不在列中(和相反的情况)。 (即X4在列中但不在行中,X6在行中但不在列中)

有没有人有合适的语法?

有没有办法找到属于列和行的数字? 很高兴知道我是否能找到它。

1 个答案:

答案 0 :(得分:0)

如果我理解你正确的问题,下面的代码应该适用于您的示例数据帧。输出将保存到not_in_columnnot_in_row

df <- data.frame(X1=c(1,1,1,4), X2=c(3,1,1,2), X3=c(4,2,2,3), X4=c(5,3,4,2), X7= c(1,4,5,3))
rownames(df) <- c("X1", "X2", "X3", "X6")

not_in_column <- rownames(df)[!(rownames(df) %in% colnames(df))]
not_in_row <- colnames(df)[!(colnames(df) %in% rownames(df))]