python - 如何在数据框中按顺序添加值
问题描述
我正在研究土地消费和人口增长。我有一个数据框,其中列出了一段时间的人口时间序列。
import pandas as pd
df = pd.DataFrame({'year': [2014, 2015, 2016, 2017, 2018], 'population': [66354, 63322,83381, 91563, 93709]})
我将建造的建筑物的数量按年份分组,这是徒劳的。
df2 = pd.DataFrame({'year': [2014, 2015, 2016, 2017, 2018], 'numberOfBu': [1348, 900, 1137, 865, 235]})
为了比较建筑物和人口之间的顺序,我应该逐年对建筑物进行增量添加 - 就像人口值一样。所以我必须将第一个值与第二个值相加,将两者的结果与第三个值相加,依此类推。
有熊猫的解决方案吗?
解决方案
IIUC 您正在搜索累积和函数cumsum()
:
df.population.cumsum()
# 0 66354
# 1 129676
# 2 213057
# 3 304620
# 4 398329
# Name: population, dtype: int64
推荐阅读
- amazon-web-services - 尝试在没有 ELB 的 AWS Windows EC2 服务器上安装 SSL 证书。怎么做?
- sql - 我可以在不指定数据类型的情况下在 SQL 上创建新表吗?
- html - Bootstrap v5.0 上的文本未水平居中对齐
- flutter - Flutter - 检查当前时间是否在给定的每小时范围内
- reportbuilder3.0 - 报表生成器 - 报表位置从第 1 页更改为第 2 页
- java - Spring UriComponentsBuilder 通过构建器添加用户名:密码
- node.js - 如何根据mongoDB中的输入数组过滤集合
- firebase - 使用 REST API 或 HTTPS 请求将数据发送到 firebase
- react-native - 使用 react-native-share 共享图像、链接和标题不起作用
- express - 为什么我不能在 nuxt 的 serverMiddleware 中创建带有参数的路由?