gpt4 book ai didi

将列值 reshape 为列名

转载 作者:行者123 更新时间:2023-12-04 11:30:41 27 4
gpt4 key购买 nike

我有一个具有以下结构的数据集:

df <- data.frame(mult=c(1,2,3,4),red=c(1,0.9,0.8,0.7),
result=c('value1','value2','value3','value4'))

我想在 3-D 图中显示(x 轴:mult,y 轴:红色,x-y 点将是“结果”)或多个 2-D 图中。显然,真正的 DF 有更多的行和多红组合。

多列和红色列没有重复的值。我想要的是将 DF reshape 为 DF1:
-   1      0.9      0.8     0.7
1 value1
2 value2
3 value3
4 .....

所以基本上:

1) [mult] 值保持原样(第 1 列)
2) [red] 值成为列名。
3) 'mult' 和 'red' 之间的每个交叉都是一个值
新的DF

我更喜欢用 来做这件事。 reshape 功能,但其他包也很好。

提前致谢,第。

最佳答案

尝试

 library(reshape2)
df1 <- transform(df, result=as.character(result),
red= factor(red, levels= unique(red)))
dcast(df1, mult~red, value.var='result', fill='')[-1]
# 1 0.9 0.8 0.7
#1 value1
#2 value2
#3 value3
#4 value4

关于将列值 reshape 为列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31000273/

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