Вычислить среднее значение нескольких значений в одной строке столбца - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть df с несколькими строками, которые имеют более одного значения в столбце Процент. Некоторые строки имеют только одно значение, а некоторые строки имеют 2-3 значения. Я хотел бы рассчитать среднее значение для строк с более чем одним значением.

    location            Ethnic                          Percent
0   Beaches-East York   English , Scottish , Canadian   19.7 , 18.9 , 24.2

Поскольку только 4 строки имеют несколько значений, я делаю это очень любительским способом, вычисляя его строка за строкой и заменяя значения. Какой более эффективный способ сделать это, если у меня есть 50 строк для расчета?

Моя любительская попытка:

import statistics

print(statistics.mean([19.7,18.9,24.2]))

1 Ответ

0 голосов
/ 30 сентября 2019

Вы можете использовать функцию применения в столбце процентов, чтобы сделать это

df["mean_percent"] = df.Percent.apply(lambda x: pd.np.mean([float(p) for p in  x.split(",")]))
print(df)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...