【问题标题】:Summing Arrays by Characteristics in Python在 Python 中按特征对数组求和
【发布时间】:2023-04-04 09:43:01
【问题描述】:

我想知道根据给定特征对数组元素求和的最有效方法是什么。例如,我有 1000 次数据抽取,而我正在寻找的是给定年份疾病的跨性别每次抽取(列)的总和(即抽取是按性别、年份、疾病进行的,我想要每年和疾病的两性总和)。

import numpy as np
year = np.repeat((1980, 1990 , 2000, 2010), 10)
sex = np.array(['male', 'female']*20)
disease = np.repeat(('d1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 'd8'), 5)
draws = np.random.normal(0, 1, size=(sex.shape[0], 1000))

关于如何获得一个形状为 (20, 1000) 的数组,该数组具有给定年份疾病的两性平局之和,有什么想法吗?我还需要能够在数据不完全平方的情况下执行此操作(有些疾病年份只有 1 种性别)。

【问题讨论】:

  • 你看过 Pandas 库 pandas.sourceforge.net 吗?我对此了解不多,但前几天看到了它,并认为如果我曾经使用过标记数据,那将值得一看。
  • 请参阅此SO Question 的已接受答案,该答案旨在将 SQL 查询转换为 NumPy 语法(您的 Q 中的查询结构在 SQL "SUM ...WHERE ... ORDERBY ...,这是此评论中链接到的 SO 问题中的查询结构),

标签:
python
arrays
numpy
sum