gpt4 book ai didi

r - 如何通过R中的两个因素总结一个数字变量

转载 作者:行者123 更新时间:2023-12-03 20:41:30 25 4
gpt4 key购买 nike

我有一个包含 3 个变量和 1.425.558 个观测值的 data.frame。它是可再生能源发电厂装机功率的登记册。每行代表一个已安装的发电厂。一个邮政编码区域内可以有多个相同类型的发电厂。

ID  zipcode     Type    power
1 79280 solarpower 3
2 79280 solarpower 3
3 79283 hydroelectric 3
4 79280 biogas 55
5 79280 windpower 2
6 21459 windpower 4
7 21459 windpower 2

我想通过邮政编码总结安装了多少太阳能/沼气/风能。

zipcode     Type    power
21459 windpower 6
79280 solarpower 6
79280 windpower 2
...and so on.

我已经试过了

aggregate(myDat$power, by=list(myDat$zipcode,myDat$type), FUN=sum)

但是我的 RAM 不够用。

我知道,我的数据框非常大。我可以缩小很多范围,因为我只需要那些以“2”开头的邮政编码的数据。

你能告诉我一个解决方案吗?非常感谢您帮助初学者!

最佳答案

如果我理解正确你需要什么,你可以使用dplyr表达它:

> data %.% group_by( zipcode, Type ) %.% summarise( power = sum(power) )
Source: local data frame [5 x 3]
Groups: zipcode

zipcode Type power
1 21459 windpower 6
2 79280 windpower 2
3 79280 biogas 55
4 79283 hydroelectric 3
5 79280 solarpower 6

如果你只想要那些以2开头的邮政编码,你可以先过滤:

> data %.% filter( grepl( "^2", zipcode ) ) %.% 
group_by( zipcode, Type ) %.% summarise( power = sum(power) )
Source: local data frame [1 x 3]
Groups: zipcode

zipcode Type power
1 21459 windpower 6

关于r - 如何通过R中的两个因素总结一个数字变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21674918/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com