Предположим, у меня есть вымышленный фрейм данных pandas df
.
Предположим, что он имеет три столбца: gender
, height
и weight
.
Есть ли встроенный или эффективный метод для получения корреляции height
и weight
для каждого gender
?
Что я сделал до сих пор:
- Вручную отфильтровали фреймы данных для каждого пола, а затем выполнили
корреляции для каждого из них. - Это сработало в моем наборе образцов, но не работает в рабочем наборе, потому что у меня больше категорий, чем просто
gender
. У меня сотни.
Пример моего неоптимального кода:
df_m=df[(df['gender']=='male')]
df_m['height'].corr(df_m['weight'])
df_f=df[(df['gender']=='female')]
df_f['height'].corr(df_f['weight'])
Идеальный выход:
'gender' 'correlation'
'male' .9007876876
'female' .8777687666
df_yourname=
перед кодом. 14.09.2018