代码之家  ›  专栏  ›  技术社区  ›  Thiago

基于两个变量生成非平衡面板数据的R Stata

  •  1
  • Thiago  · 技术社区  · 7 年前

    我有一个结构类似于此示例的数据集:

    Before_data

    我想将其转换为基于变量“年”和“pol\u party*”的面板数据,以便:

    After_data

    非常感谢。

    1 回复  |  直到 7 年前
        1
  •  1
  •   Guilherme Jardim Duarte    7 年前

    这可以通过在R中使用tidyr包(包含在tidyverse中)来实现。

    尝试以下操作:

    library(tidyverse)
    base <- base %>%
      gather(key = "pol_party_columns", value = "pol_party_values", pol_party1:pol_party4) %>%
      select(-pol_party_columns, pol_party = pol_party_values)
    

    首先,您必须将所有列收集到另外两列中。然后,您只需删除第一个并重命名第二个。

    推荐文章