Общественный номер: You Er Hut
Автор: Питер
Редактор: Питер
Фильтрация данных Pandas series_DataFrame (вкл.)
В этой статье описывается, как фильтровать и просматривать данные в pandas. Поскольку в pandas существуют различные приемы фильтрации данных, в этой статье сначала представлена основная часть сравнения.
Расширенное чтение
Для ознакомления с pandas и создания типов данных Series и DataFrame в pandas, пожалуйста, прочитайте:
2,10 способов создания данных типа DataFrame
3.Все начинается с функции взрыва
Данные моделирования
Различные примеры в этой статье основаны на смоделированных данных, и некоторые отсутствующие значения вводятся при создании данных, которые генерируются библиотекой numpy:
import pandas as pd
import numpy as np
df = pd.DataFrame({
"name":['小明','小王','张菲','关宇','孙小小','王建国','刘蓓'],
"sex":['男','女','女','男','女','男','女'],
"age":[20,23,18,21,25,21,24],
"score":[np.nan,600,550,np.nan,610,580,634], # 缺失两条数据
"address":["广东省深圳市南山区",
np.nan, # 数据缺失
"湖南省长沙市雨花区",
"北京市东城区",
"广东省广州市白云区",
"湖北省武汉市江夏区",
"广东省深圳市龙华区"]
})
df
Давайте посмотрим на типы данных каждого поля: 3 типа символов, один тип int64 и один тип float64.
карта разума
Начнем с различных методов фильтрации данных:
Просмотр данных головы и хвоста
Для просмотра данных головы и хвоста используются методы головы и хвоста:
head
Этот метод по умолчанию использует первые 5 строк
Вы можете указать, сколько строк данных отображать:
tail
Использование tail аналогично:
- Хвост по умолчанию 5 строк
- Укажите количество строк для просмотра
случайный скрининг
При использовании примера метода по умолчанию отображается одна строка данных, и вы также можете указать, сколько строк следует просмотреть:
Фильтрация числовых данных
единственное условие
1. Скрининг числовых данных, как правило, осуществляется по сравнению размеров:
несколько условий
2. Когда у нас есть несколько условий сравнения, нам нужно обратить внимание:
- Не могу использовать и, используйте вертикальную черту
|
- Используйте скобки для каждого условия
Вот как правильно писать:
Используйте числовые функции
Обычно используемые числовые функции сравнения:
df.eq() # 等于相等 ==
df.ne() # 不等于 !=
df.le() # 小于等于 >=
df.lt() # 小于 <
df.ge() # 大于等于 >=
df.gt() # 大于 >
1. Фильтр с использованием одной числовой функции
2. Используйте несколько числовых функций для фильтрации;
фильтр данных персонажа
Скрининг данных символьного типа в основном осуществляется с помощью связанных функций в python и pandas;
- Содержит: ул.содержит
- Начало: ул.startswith
- конец: ул.эндсвит
Три примера на рисунке ниже иллюстрируют использование трех вышеуказанных функций:
Поля, использованные в приведенных выше примерах, не имеют нулевых значений. Что делать, если поля содержат нулевые значения? Например, мы хотим выбрать студентов, в адресе которых указано «Шэньчжэнь»:
Решение 1. Введите параметры
Решение 2. Судя по сравнению булевых значений
Укажите фильтры значений данных
Отфильтруйте данные, указав конкретное значение для поля:
Сочетание числовых и символьных типов
Комбинированное использование условий сравнения числового размера и условий, связанных с символами:
- и:&
- или: |
выборка индекса
Извлечение числа непосредственно по значению индекса в этом случае используется редко:
количество срезов
Нарезка в pandas такая же, как и в Python:
- Левый индекс начинается с 0, правый индекс начинается с -1
- Правила нарезки:
start:stop:step
, соответственно представляют начальную позицию начала, конечную позицию остановки, шаг размера шага (может быть положительным или отрицательным)
Элемент в конечной позиции индекса не включается:голова без хвоста, помните важные правила нарезки индекса! ! !
Подсчитайте, используя одно значение среза:
Различные случаи использования выборки слайсов:
Давайте посмотрим на выборку фрагмента в этом случае:
Когда размер шага не равен 1, а индекс отрицательный:
Фильтр отсутствующих значений
В этой статье используются следующие случаи пропущенных значений:
Просмотр отсутствующих значений
df.isnull()
Просмотр отсутствующих значений поля
df25 = df.isnull().any() # 列中是否存在空值
df25
Блокировать строки, в которых существуют пропущенные значения
df26 = df[df.isnull().values==True]
df26
Доступ к атрибуту столбца
Укажите имя атрибута
Во-первых, мы напрямую указываем имя атрибута столбца, и в этом случае данные типа Series вынимаются
Во втором случае выносятся данные типа DataFrame:
Задает тип свойства поля
Типы полей данных в этом случае:
1. ВынутьВключаютДанные типа объекта:
Если вы хотите вывезтиСодержит множество видовДанные:
2. Вынутьне содержитДанные типа объекта:
Суммировать
Есть действительно разные способы получить числа в pandas, и есть много способов получить нужные нам данные. Различные типы, представленные в этой статье, являются относительно базовыми, такими как данные головы и хвоста, скрининг на основе условного суждения, срез срезов и т. д., и в будущем они представят больше методов извлечения данных в pandas, так что следите за обновлениями!