如何基于第一个元素组合两个numpy数组?

时间:2017-11-02 14:06:38

标签: python arrays numpy

我有一个包含四个数据点的数组:

Array = np.array(["type1", 1, 2, 3], ["type2", 3, 4, 1], ["type1", 0.5, 0.5, 1], ["type2", 1, 1, 0.5])

我想根据它们的类型组合四个数据点并计算三个数字的平均值。所以它看起来像这样:

Array = np.array(["type1", 0.5, 1, 1.5],["type2", 1.5, 2, 0.5])

我尝试了numpy的一些功能,但我总是得到错误,或者不是预期的结果。

如何根据类型(1或2)组合四个数据点并计算数字的平均值?

1 个答案:

答案 0 :(得分:0)

有一个名为pandas的工具可以帮助你解决这个问题。 Numpy不适合基于字符串的操作。

dplyr

import pandas as pd m = pd.DataFrame([["type1", 1, 2, 3], ["type2", 3, 4, 1], ["type1", 0.5, 0.5, 1], ["type2", 1, 1, 0.5]]) arr = m.groupby([0],as_index=False).mean().values

的输出
arr