将命名num合并到现有的data.frame中

问题描述 投票:0回答:2

我正在尝试将命名 Num 值合并到包含相同名称(和长度)向量的现有 data.frame 中。但是,data.frame 中的顺序与 Named num 中的顺序不同,因此它与该值不正确匹配。我一直在努力:

attr_B12$deg.bin<-deg_binary[match(names(deg_binary), attr_B12$Name)]

其中

attr_B12$deg.bin
是我想在现有data.frame(attr_B12)中创建的新列,
deg_binary
是命名 Num [1:95] 对象, 和
attr_B12$Name
是名称向量,应与与命名编号关联的名称相匹配...

但是当我查看 data.frame 时,发现与

attr_B12$Name
) 关联的值不正确。

r match igraph named
2个回答
0
投票

我不知道我是否理解正确,但我首先尝试使用

sort()
将两个数据集按相同的顺序排列(如果存在具有相同值的变量,最好是唯一的值)。


0
投票

我使用

merge()
来实现这一点。

attr_B12_copy <- merge(x = as.data.frame(deg_binary),
                       y = attr_B12,
                       by = "row.names")

as.data.frame(deg_binary)
使用数字名称作为行名称,将命名数字强制转换为数据帧。

由于

deg_binary
attr_B12
的名称相同且长度相同,因此我们可以仅按行名称合并,并且不会丢失文件。

© www.soinside.com 2019 - 2024. All rights reserved.