Фильтрация данных
Урок 9 из 19 курса Аналитика в pandas на Coddy.
Pandas позволяют нам фильтровать строки на основе определенного условия. Чтобы отфильтровать строки, напишите условие внутри квадратных скобок:
filtered_df = df[df["number_column"] > 5]
filtered_df = df[df["string_column"] == "String Match"]Чтобы объединить несколько условий, используйте ключевое слово & (и) и ключевое слово | (или). Каждое условие должно быть в круглых скобках ():
filtered_df = df[(df['number_column'] >= 3) & (df['string_column'] == 'String Match')]Ключевое слово not (не) — это ~ (не больше 5):
filtered_df = df[~df["number_column"] > 5]Чтобы получить все непустые значения из определенного столбца:
filtered_df = df[~df["column"].isna()]Чтобы проверить, находится ли значение в массиве:
filtered_df = df[df['column'].isin(['value1', 'value2', 'value3'])]
Задание
ЛегкоCSV-файл stats.csv содержит информацию о статистике.
Вот первые 5 строк файла:
ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPEИзвлеките только те строки, которые соответствуют следующим критериям:
SKILL_POINTSбольше7.UTILIZATIONменьше или равно0.7или больше0.95.IS_VALIDравно единице.CATEGORYявляется одним из следующих:JAPE,PLQRиGHUP
Сохраните итоговый результат в переменной df.
Попробуйте сами
# pandas как pd уже импортирован
df = pd.read_csv("./stats.csv")
# Напишите свой код ниже
Все уроки раздела Аналитика в pandas
4Анализ данных с Pandas
Описательная статистикаГруппировка и агрегация данныхРазличные агрегацииMerge и Concat3Манипуляции с данными в Pandas
Возврат нужного результатаФильтрация данныхДобавление и удалениеИзменение данныхИзменение строкПользовательские изменения