Pandas как посчитать долю

Есть файл с данными — https://github.com/Yorko/mlcourse.ai/blob/main/data/adult.data.csv

Задача — узнать доля граждан Германии (Germany), признак «native-country»

Решение — необходимо отфильтровать данные, отвечающие определенному условию (содержание определенного слова в определенном столбце) и посчитать долю отфильтрованных данных в общей массе данных (то есть посчитать долю отфильтрованного кол-ва строк в общем кол-ве строк).

Для того, чтобы отфильтровать данные я воспользовался следующими командами.

1. Прочитать данные в DataFrame

import pandas as pd
import numpy as np
df = pd.read_csv('adult.data.csv')

2. Посчитать значения

df['native-country'].str.contains('Germany').mean()

Также есть иной вариант решения, немного сложенее. Сначала добавить отдельный столбец и в него указать признак 1 для Германии, а потом посчитать среднее значение. Вариант одинаков

df['is-german'] = np.where(df['native-country']== 'Germany', 1, 0)
df['is-german'].mean()