gpt4 book ai didi

r - 合并两个数据帧,但表示两个数据帧中都存在的列

转载 作者:行者123 更新时间:2023-12-02 18:33:14 25 4
gpt4 key购买 nike

假设我有两个 data.frames,

df = data.frame(gene = c("KRAS", "FOS"), A6 = c(20, 50), A7 = c(90, 80))
df2 = data.frame(gene = c("KRAS", "FOS"), A6 = c(20, 250) )

这里重复了A6,当我尝试使用merge(df, df2, by = "gene"))合并这两个数据帧时,它会创建新的包含 A6.xA6.y 的列。

有没有办法让它合并,这样它就会取重复列的平均值?谢谢!

最佳答案

按数字列名称(子字符串)合并分割数据并获取rowMeans

cbind(out[1], sapply(split.default(out[-1], 
sub("\\..*", "", names(out)[-1])), rowMeans))
# gene A6 A7
#1 FOS 150 80
#2 KRAS 20 90

数据

out <- merge (df, df2, by="gene")

关于r - 合并两个数据帧,但表示两个数据帧中都存在的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53869746/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com