gpt4 book ai didi

根据第二个数据框中的值替换数据框中的 header

转载 作者:行者123 更新时间:2023-12-02 04:40:28 25 4
gpt4 key购买 nike

假设我有一个如下所示的数据框:

df.A

A B C
x 1 3 4
y 5 4 6
z 8 9 1

我想在一秒钟内根据列值替换第一个列名:

 df.B

Low High
A D
B F
C G

这样我得到:

df.A
D F G
x 1 3 4
y 5 4 6
z 8 9 1

我该怎么做?

我尝试从 df.B 中提取向量 df.B$High 并在 names(df.A) 中使用它,但一切都是按字母顺序排列的,并且移动了一个。此外,这仅在 df.A 中的列顺序相对于 df.B$High 中的元素保持不变的情况下才有效,但情况并非总是如此(并且在我的真实示例中,没有数字或字母顺序的方式将两者排序为相同的顺序)。所以我想我需要一个 rbind 类型的参数来匹配元素,但我不确定。

谢谢!

最佳答案

您可以使用plyr 中的重命名:

library(plyr)
dat <- read.table(text = " A B C
x 1 3 4
y 5 4 6
z 8 9 1",header = TRUE,sep = "")
> new <- read.table(text = "Low High
A D
B F
C G",header = TRUE,sep = "")
> rename(dat,replace = setNames(new$High,new$Low))
D F G
x 1 3 4
y 5 4 6
z 8 9 1

关于根据第二个数据框中的值替换数据框中的 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20960562/

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