我是R新手,目前正在从事与多个公司从1960年到现在的月度股票价格有关的项目。我有多个Excel电子表格,每个电子表格都包含针对多个公司的多个时间序列。我能够合并,并以p = 4和n = 610,000的数据集结束。但是,我正在寻找的是一个带有股票行情作为变量的单一时间序列。即p = 1600和n = 730(大约)。
have<-data.frame(list(Time=c(1,2, 3, 4, 1, 2, 3, 4, 1, 2,3, 4), Firm=c('A','A','A','A', 'B','B','B','B','C','C','C','C'), Price=c(15, 5, 10, 5, 25, 20, 15, 'NA', 'NA', 35, 85, 50)))
want<-data.frame(list(Time=c(1,2,3,4), A=c(15,5,10,5), B=c(25,20,15,'NA'), C=c('NA', 35, 85, 50)))
答案 0 :(得分:0)
使用pivot_wider
library(tidyr)
library(dplyr)
have %>%
pivot_wider(names_from = Firm, values_from = Price)
# A tibble: 4 x 4
# Time A B C
# <dbl> <fct> <fct> <fct>
#1 1 15 25 NA
#2 2 5 20 35
#3 3 10 15 85
#4 4 5 NA 50