Функция Pandas DataFrame loc[] в Python

Функция Pandas DataFrame loc[] используется в Python для доступа к группе строк и столбцов по меткам или логическому массиву. Метод loc() в основном выполняется на основе меток, но булев массив также может это делать.

Что такое функция DataFrame loc[] в Pandas?

Pandas DataFrame loc — это уникальный метод, который принимает метки индекса и возвращает строку или DataFrame, если метка индекса существует в вызывающем DataFrame. Входные данные могут быть различных типов. Одна метка, например, 9 или «x», или любое другое одиночное значение может быть любого типа. Это может быть список или массив меток. Ex – [‘a’,’b’,’c’,’d’], и это также может быть логический массив. Ex- [False, True, False].

Синтаксис

Параметры

Вот некоторые из разрешенных входных данных:

  1. Одиночная метка — возвращает строку как объект серии.
  2. Список меток — возвращает DataFrame выбранных строк.
  3. Срез с метками — возвращает серию с указанными строками, включая начальные и конечные метки.
  4. Логический массив — возвращает DataFrame для меток True; длина массива должна быть такой же, как у выбранной оси.
  5. Условный оператор или лямбда-функция — возвращает допустимое значение для выбора возвращаемых строк и столбцов.

Возвращаемое значение

Pandas loc[] возвращает скалярные значения, серии или DataFrame в зависимости от ввода.

Пример

Напишем программу, показывающую работу метода loc() в Python.

Выход:

В приведенном выше примере мы создали словарь для хранения небольших наборов данных учащихся, которые включали в себя имена учащихся, отсутствие оценок по различным предметам, таким как математика, естествознание и английский язык. Предположим, мы хотим получить оценки одного учащегося по определенному предмету, тогда мы можем использовать метод loc() и передать имя учащегося и столбец, чтобы получить желаемый результат.

Доступ к нескольким столбцам DataFrame с помощью loc[]

Вы можете получить доступ к нескольким столбцам DataFrame, используя свойство loc[].

Напишем программу для возврата нескольких столбцов с помощью функции loc().

Выход:

В приведенном выше примере мы видим, что мы вернули несколько столбцов, используя функцию loc() для одного и того же набора данных студентов. Столбцы, которые мы вернули, представляют собой roll number и maths из 5 столбцов. Мы можем вернуть несколько столбцов, оставив первый параметр пустым, а второй параметр — имя столбцов, которые мы хотим вернуть, разделенные знаком «:».

Pandas DataFrame loc[] в Jupyter Notebook

Jupyter Notebook — это веб-приложение с открытым исходным кодом, которое позволяет нам создавать и обмениваться документами, содержащими уравнения, визуализации, живой код и описательный текст, включая очистку и преобразование данных, численное моделирование, статистическое моделирование, визуализацию данных, машинное обучение и намного больше.

Давайте создадим блокнот и импортируем Pandas.

Теперь мы будем использовать набор данных ratings.csv.

Нашим следующим шагом будет создание DataFrame с использованием функции Pandas read_csv().

Мы должны использовать функцию DataFrame.head() для выбора первых пяти строк, потому что DataFrame очень большой, и нам не нужно показывать полный DataFrame.

Понимание Pandas DataFrame loc[]

Теперь давайте получим доступ к строкам и столбцам, используя Pandas loc[].

loc[] с одной меткой в DataFrame

Мы можем получить к нему доступ, используя одну метку в Pandas DataFrame.

Он возвращает первую строку DataFrame в объекте Series.

loc[] с одной меткой в DataFrame

Мы можем увидеть тип объекта, используя функцию type().

тип DataFrame loc[]

Получение единственного значения

Мы можем получить одно значение, указав строки DataFrame и метки столбцов.

Давайте найдем placeID для строки 5 и индекса 4.

Pandas DataFrame loc[] - объяснение

Вы можете видеть, что мы получили значение placeID, равное 135104.

Pandas loc[] с условными операторами

Мы можем получить значения DataFrame, используя условные операторы.

Скажем, нам нужны первые 5 строк, у которых food_rating > 1.

Pandas loc[] с условными операторами

В выводе вы можете видеть, что мы получили первые пять строк, у которых food_rating > 1.

С лямбда-функцией

Функция Python Lambda — это функция, определенная без имени. Мы можем использовать loc[] с лямбда-функцией.

DataFrame loc[] с лямбда-функцией

Мы определили и вызвали лямбда-функцию внутри loc[], чтобы получить единственные строки, чей идентификатор пользователя равен U1077.

Установка значений DataFrame с помощью loc[]

Мы можем установить значения DataFrame, используя атрибут loc[].

Мы можем установить единственное значение, указав метки строк и столбцов, чтобы установить значение определенного индекса.

Установка значений DataFrame с помощью loc[]

Вы можете видеть, что мы изменили рейтинг 1 проиндексированной строки с 2 до 3. Наш обновленный DataFrame отразил это значение. Мы можем установить значения для всей строки.

Давайте назначим значение Python None для идентификатора пользователя U1068.

Установка значений DataFrame с помощью loc для всей строки

Вы можете видеть в значениях третьей строки, что строка превратилась в None, а числовые значения превратились в NaN.

Заключение

Атрибут Pandas DataFrame loc[] в Python

Атрибут Python DataFrame loc[] полезен, потому что мы можем получать определенные значения, а также устанавливать значения. Поддержка условных параметров и лямбда-выражений с атрибутом loc[] делает его надежным ресурсом.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python