r - 如何折叠一个数据集以在新数据集中获取增量实例?
问题描述
我正在尝试将一个具有以下分析单位的数据框折叠起来:country-pta-yea 为 country-year。我尝试了 group_by 并汇总,但它会汇总所有值,而不是增量添加它们,因为每个 PTA 在不同年份都存在每个“值”观察值。下面是我拥有的数据框(df)和我想要实现的数据框(df2)。
接下来我该怎么办?
country <- c("USA","USA","USA","USA","USA","USA")
year <- c(2000,2001,2002,2000,2001,2002)
pta <- c("a","a","a","y","y","y")
value <- c(0,1,1,0,0,1)
df <- data.frame(country, year,pta, value)
country1 <- c("USA","USA","USA")
year1 <- c(2000,2001,2002)
value1 <- c(0,1,2)
df2 <- data.frame(country1,year1, value1)
解决方案
它是一个group by,sum
即按'国家','年份'分组,得到sum
价值
library(dplyr)
df %>%
group_by(country, year) %>%
summarise(value = sum(value, na.rm = TRUE), .groups = 'drop')
推荐阅读
- c# - 是否可以使用 Python 中的 Zlib 和 C# 中的 Ionic.Zlib 获得字节相同的压缩文件?
- flutter - Flutter 可以从原始像素数据中渲染图像吗?
- xml - 为什么我的 XSLT 被忽略了?XML 输出没有变化
- spring-mvc - 错误 404 tomcat 服务器:请求的资源不可用
- html - 小屏幕上的文本动画故障
- java - 如何将 SceneAntialiasing 设置为在 FXML 文件中创建的 SubScene?
- big-o - 为每个已删除的值添加一个值是否仍会保持恒定空间?
- sql - 为什么这个 SQL 语句是错误的?
- azure - Service Fabric 内部 DNS 突然停止工作
- twilio - 处理来电 - 广播给多个代理