0

Провести расчет нового столбца как среднее значение других столбцов в pandas

10

Описание проблемы:

Я работаю с датафреймом в pandas и хочу добавить новый столбец, который будет содержать среднее значение по столбцам salary_1, salary_2 и salary_3. У меня есть следующий датафрейм:

df = pd.DataFrame({
    'salary_1': [230, 345, 222],
    'salary_2': [235, 375, 292],
    'salary_3': [210, 385, 260]
})

Вот как выглядит мой датафрейм:

      salary_1     salary_2    salary_3
0        230           235        210
1        345           375        385
2        222           292        260

Я хочу получить новый столбец, например, salary_mean, который будет вычисляться как среднее значение для каждого ряда:

      salary_1     salary_2    salary_3     salary_mean
0        230           235        210     (230+235+210)/3
1        345           375        385       ...
2        222           292        260       ...

Как я могу это сделать в pandas наиболее эффективным способом? У меня значительно больше столбцов, и я не хочу писать их все по одному.

1 ответ(ов)

0

Простой способ решения этой задачи показан ниже:

col = df.loc[:, "salary_1":"salary_3"]

где "salary_1" — это имя стартового столбца, а "salary_3" — имя конечного столбца.

df['salary_mean'] = col.mean(axis=1)
df

Это создаст новый DataFrame с новой колонкой, которая показывает среднее значение всех указанных колонок. Этот подход особенно полезен, когда у вас есть большой набор колонок или когда нужно проводить расчеты только по некоторым выбранным колонкам, а не по всем.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь