【发布时间】:2019-03-12 07:51:49
【问题描述】:
我对 Python 及其在 GIS 中的应用非常陌生。
使用 Jupyter 笔记本,我正在处理一个太大而无法用 excel 打开的数据集。它有近 800000 行和 61 列。
现在,我需要查询数据框以创建感兴趣的子集,在本例中为 2 列:OBJECTID 和 Landuse,每列都有一个特定范围:
import pandas
df = pd.read_csv('.big file.csv')
grass_ID4440 = df[(df.OBJECTID == 4440) & (df.Landuse == 'Grass - Urban')]
这个子集有 38 行。现在,如果我只想对这 38 行的面积求和,我应该采用哪种逻辑/方法?
这是我的想法:
area_ID4440 = grass_ID4440['Area'].sum()
这在逻辑上显然是错误的,因为它吐出了整个数据集的总面积之和。
提前谢谢你!
【问题讨论】:
-
据我所知,
grass_ID4440只包含所需的 38 行,因此使用grass_ID4440['Area'].sum()只能对这些区域求和。 -
请显示所需的输出,因为单个总和似乎可以回答 我想对这 38 行的面积求和。
标签: python python-3.x pandas indexing