Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何删除重复的成对列_R - Fatal编程技术网

R 如何删除重复的成对列

R 如何删除重复的成对列,r,R,考虑以下数据帧: df <- data.frame(V1 = c("A", "A", "B", "B", "C", "C"), V2 = c("B", "C", "A", "C", "A", "B"), n = c(1, 3, 1, 2, 3, 2)) 我尝试了unique()和duplicated()但没有效果。不确定这是否是最简单的方法(转置可能在计算上很昂贵),但这将适用于您的数据帧: df <- data.frame(V1 = c

考虑以下数据帧:

df <- data.frame(V1 = c("A", "A", "B", "B", "C", "C"),
           V2 = c("B", "C", "A", "C", "A", "B"),
           n = c(1, 3, 1, 2, 3, 2))

我尝试了
unique()
duplicated()
但没有效果。

不确定这是否是最简单的方法(转置可能在计算上很昂贵),但这将适用于您的数据帧:

df <- data.frame(V1 = c("A", "A", "B", "B", "C", "C"),
                 V2 = c("B", "C", "A", "C", "A", "B"),
                 n = c(1, 3, 1, 2, 3, 2))
如果您的列名和顺序很重要,您必须重新建立它们

names(df) <- c("n", "V1", "V2")
df <- df[, c("V1", "V2", "n")]

names(df)不确定这是否是最简单的方法(转置可能在计算上很昂贵),但这将适用于您的数据帧:

df <- data.frame(V1 = c("A", "A", "B", "B", "C", "C"),
                 V2 = c("B", "C", "A", "C", "A", "B"),
                 n = c(1, 3, 1, 2, 3, 2))
如果您的列名和顺序很重要,您必须重新建立它们

names(df) <- c("n", "V1", "V2")
df <- df[, c("V1", "V2", "n")]

names(df)另一个选项是将数据集(
xtabs(n~…)
)重新格式化为宽格式,将下三角矩阵设置为0,并删除“Freq”等于0的行

m1 <- xtabs(n~V1+V2, df)
m1[lower.tri(m1)] <- 0
subset(as.data.frame(m1), Freq!=0)
#  V1 V2 Freq
#4  A  B    1
#7  A  C    3
#8  B  C    2

m1另一个选项是将数据集(
xtabs(n~…)
)重新格式化为宽格式,将下三角矩阵设置为0,并删除“Freq”等于0的行

m1 <- xtabs(n~V1+V2, df)
m1[lower.tri(m1)] <- 0
subset(as.data.frame(m1), Freq!=0)
#  V1 V2 Freq
#4  A  B    1
#7  A  C    3
#8  B  C    2

m1这看起来很相似:@thelatemail它很相似,甚至可能是重复的。另一个问题写得更清楚——它更清楚需要什么。这个问题应该被编辑以显示真实意图(或者以重复或不清楚的形式结束)。这看起来很相似:@thelatemail它很相似,甚至可能是重复的。另一个问题写得更清楚——它更清楚需要什么。应编辑此问题以显示真实意图(或以重复或不清楚的形式关闭)。