在R中合并宽数据帧和长数据帧
我试图将GDP数据添加到我拥有的数据框架中。我已经包括了数据帧的前5行,以供参考 我想把每个州的GDP按年份加起来。在我的数据框架中,我有一个周期和状态列,我想用它来“匹配”相应的GDP值,但我似乎不知道怎么做,因为GDP信息的格式很广 任何帮助都将不胜感激在R中合并宽数据帧和长数据帧,r,merge,R,Merge,我试图将GDP数据添加到我拥有的数据框架中。我已经包括了数据帧的前5行,以供参考 我想把每个州的GDP按年份加起来。在我的数据框架中,我有一个周期和状态列,我想用它来“匹配”相应的GDP值,但我似乎不知道怎么做,因为GDP信息的格式很广 任何帮助都将不胜感激 候选对象从宽到长重塑形状,然后像往常一样合并 与您的示例数据不匹配,但以下内容适用于您的完整数据: merge(candidates, pivot_longer(stateGDP, cols = -1, names_to = &
候选对象从宽到长重塑形状,然后像往常一样合并 与您的示例数据不匹配,但以下内容适用于您的完整数据:
merge(candidates,
pivot_longer(stateGDP, cols = -1, names_to = "State", values_to = "GDP"),
by.x = c("Cycle", "State"), by.y = c("X1", "State"))
这是一个tidyverse版本,我稍微更改了您的输入数据,以确保有匹配项
图书馆弹琴
图书馆三年
候选人$GDP%
mutateCycle=as.characterX1%>%
选择美国,-X1
左(右),州(右)
>连接,通过=C循环,状态
>循环候选名称状态VoteShare状态GDP
>1 1990年罗伯特·帕尔默加利福尼亚州0.3367558 7.2
>2 1990年大卫·艾略特·史密斯加利福尼亚州0.3565430 7.2
>3 1990年Gary A Condit CA 0.6618500 7.2
>4 1990年克里夫伯里斯约0.3381500 7.2
>5 1990 Jerry M Reiss CA 0.2203567 7.2
你的数据稍微修改了一下
候选者从宽变长,然后像往常一样合并