我有一个包含四个数据点的数组:
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)组合四个数据点并计算数字的平均值?
答案 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