【发布时间】:2021-12-18 20:55:03
【问题描述】:
我有一些零售分店的数据以及它们关闭的日期,如果它们没有关闭,那么这是 NA。我想扩展这些数据,使它们成为一个面板,并带有一个 0/1 指示器,以显示该分支是否在该年或随后几年关闭。
这是我拥有的数据格式和我想要的数据格式的示例。这里的数据涵盖了 2015 年到 2019 年的 5 年期间。分行 A、B 和 D 保持营业,但分行 C 于 2016 年关闭,分行 E 于 2019 年关闭。
branch <- LETTERS[1:5]
yearclosed <- c(NA, NA, 2016, NA, 2019)
have.df <- data.frame(branch, yearclosed)
have.df
branch <- c(rep("A",5), rep("B",5), rep("C",5), rep("D",5), rep("E",5))
year <- rep(2015:2019, 5)
closed <-c (rep(0,5), rep(0,5), 0,1,1,1,1, rep(0,5), 0,0,0,0,1)
want.df <- data.frame(branch, year, closed)
want.df
我曾尝试将宽格式转换为长格式,但没有取得太大进展。我可以写几个 for 循环,但这些通常不是 R 中的最佳解决方案?有没有人有类似的经历可以分享给我?谢谢。
【问题讨论】:
标签: r dataframe dataformat long-format-data