繁体   English   中英

如何遍历 Pandas df?

[英]How To Loop Through Pandas df?

我有这个 df

Covid-19 意大利

我想创建一个能够获得指定值的循环:

  • 接种疫苗的人数(在 M 和 F 之间),
  • 第一剂总和和第二剂总和
  • 为名称区域选择

因此,条件字符串出现如下:

br = vaccini.loc[(vaccini['fornitore'] == 'Pfizer/BioNTech') & 
             (vaccini['fascia_anagrafica'] == '20-29') & 
             (vaccini['nome_area'] == 'Abruzzo')].sum()

有条件的结果

但我想创建一个循环以提高计算效率,例如:

for x in df 如果fornitore是(同一个词) 如果fascia_anagrafica是(同一个词) 如果nome_area是(同一个词) print(x)

我认为你想要的是一个groupby。

cols = [s for s in vaccini.columns if s.startswith('sesso') or s.endswith('dose')]
vaccini.groupby(['fornitore', 'fascia_anagrafica', 'nome_area'])[cols].sum()

这将对每个组中提供的列求和。 如果您想要一个特定的总和,只需使用适用的制造商、年龄和位置查询适用行的结果多索引。

通常,对于 Pandas,您希望尽可能避免执行循环。 如果您查看图书馆,通常有一些方法可以绕过循环,因此 Pandas 有大量研究元素(除非您正在寻找的内容非常不标准)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM