gpt4 book ai didi

使用多个解释变量将数据从长到宽 reshape

转载 作者:行者123 更新时间:2023-12-04 11:03:34 35 4
gpt4 key购买 nike

我正在尝试使用 R 转换我的数据框格式。我想要唯一的公司名称,因为它对每个公司都有多个观察结果。我的数据看起来像

company name    Values  Year
A 1 2010
A 2 2011
B 4 2010
B 6 2012
C 8 2011

我想要下面的格式

 company name   first_value First_year  second_values second_year
A 1 2010 2 2011
B 4 2010 6 2012
C 8 2011 NA NA

我试过这段代码,但它没有给出我期望的结果

library(plyr)
extract.hashtags <- function(x) {
x <- subset(x,select=c(-Company.Name))
mat <- as.matrix(x)
dim(mat) <- c(1,length(mat))
as.data.frame(mat)
}

df1 = ddply(data, .(Company.Name), extract.hashtags )

最佳答案

添加“时间”变量后,您可以在 base R 中使用 reshape,这可以使用我的“splitstackshape”包中的 getanID 完成:

reshape(getanID(mydf, "companyname"), idvar = "companyname", 
timevar = ".id", direction = "wide")
# companyname Values.1 Year.1 Values.2 Year.2
# 1: A 1 2010 2 2011
# 2: B 4 2010 6 2012
# 3: C 8 2011 NA NA

关于使用多个解释变量将数据从长到宽 reshape ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32179772/

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