У меня есть 2D-массив, который выглядит следующим образом:
array = [[23 ,89, 4, 3, 0],[12, 73 ,3, 5,1],[7, 9 ,12, 11 ,0]]
Где последний столбец всегда 0 или 1 для всех строк.Моя цель состоит в том, чтобы рассчитать два средних для столбца 0, где одно среднее будет, когда значение последнего столбца равно 0, а одно среднее будет, когда значение последнего столбца будет равно 1.
, например, для данного массива образцов выше: среднее значение 1: 15 (среднее значение для столбца 0 для всех строк, где последний столбец равен 0) среднее значение 2: 12 (среднее значение для столбца 0 для всех строк, где последний столбец равен 1)
Я пробовал это (где train - это имя моего входного массива):
mean_c1_0=np.mean(train[:: , 0])
variance_c1_0=np.var(train[:: , 0])
Это дает мне среднее значение и дисперсию для столбца 0 со всеми значениями.
Я всегда могу ввести еще один цикл for и пару условий if, чтобы продолжать проверять последний столбец и только потом добавлять соответствующие значения в столбец 0, но я ищу эффективный подход.Так как я новичок в Python, я надеялся, что есть просто функция, которая сможет это сделать.
Можете ли вы указать мне любую такую документацию?