Методы просмотра данных в Pandas

Как быстро оценить содержание датасета Pandas

Когда работаешь с большим объемом данных, первый шаг, который следует сделать — это быстро и правильно оценить, что содержится в этом наборе данных. Pandas предлагает ряд методов, позволяющих эффективно осуществлять первичный просмотр данных. Рассмотрим методы head(), info() и describe().

Создаем тестовый DataFrame

Прежде всего, давайте создадим небольшой тестовый DataFrame на основе данных о людях.

import pandas as pd

data = {
    'Name': ['Anna', 'Mike', 'Lucas', 'Sam', 'Amy', 'Eva', 'John', 'Daniel', 'Grace', 'Sophie'],
    'Age': [23, 29, 31, 18, 25, 54, 45, 35, 40, 38],
    'City': ['Moscow', 'Paris', 'Berlin', 'London', 'Madrid', 'Moscow', 'Paris', 'Rome', 'Madrid', 'London'],
    'Salary': [50000, 55000, 60000, 48000, 52000, 62000, 57000, 53000, 54000, 58000]
}

df = pd.DataFrame(data)

Метод head()

Для того чтобы взглянуть на первые строки DataFrame, используется метод head(). По умолчанию он покажет 5 строк.

print(df.head())

Результат:

    Name  Age    City  Salary
0   Anna   23  Moscow   50000
1   Mike   29   Paris   55000
2  Lucas   31  Berlin   60000
3    Sam   18  London   48000
4    Amy   25  Madrid   52000

Если мы хотим посмотреть, например, только первые 3 строки:

print(df.head(3))

Результат:

    Name  Age    City  Salary
0   Anna   23  Moscow   50000
1   Mike   29   Paris   55000
2  Lucas   31  Berlin   60000

Метод info()

Этот метод дает общую информацию о DataFrame.

print(df.info())

Результат:

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 10 entries, 0 to 9
Data columns (total 4 columns):
 #   Column  Non-Null Count  Dtype 
---  ------  --------------  ----- 
 0   Name    10 non-null     object
 1   Age     10 non-null     int64 
 2   City    10 non-null     object
 3   Salary  10 non-null     int64 
dtypes: int64(2), object(2)
memory usage: 448.0+ bytes
None

Таким образом, мы видим, что у нас есть 10 записей, 4 столбца, и в каждом столбце по 10 ненулевых значений.

Метод describe()

Этот метод дает статистическую сводку числовых столбцов.

print(df.describe())

Результат:

             Age        Salary
count  10.000000     10.000000
mean   33.800000  54900.000000
std    10.881176   4408.325457
min    18.000000  48000.000000
25%    26.000000  52250.000000
50%    33.000000  54500.000000
75%    39.500000  57750.000000
max    54.000000  62000.000000

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

Работа с нечисловыми данными в методе describe()

Метод describe() не ограничивается только числовыми данными. Если вы хотите получить статистику по нечисловым столбцам (например, по строкам), вы можете использовать параметр include.

print(df.describe(include='object'))

Результат:

        Name    City
count     10      10
unique    10       6
top     Anna  Moscow
freq       1       2

В этом примере:

  • count показывает общее количество записей.
  • unique сообщает нам, сколько уникальных записей в каждом столбце.
  • top показывает наиболее часто встречающееся значение.
  • freq показывает, сколько раз встречается наиболее частое значение.

Использование include для получения статистики по всем данным

Чтобы получить статистику сразу по числовым и нечисловым столбцам, используйте include='all'.

print(df.describe(include='all'))

Этот код вернет статистику для всех столбцов в DataFrame.

Советы по использованию

  • Используйте head() , чтобы быстро просмотреть начальные и конечные строки ваших данных. Это позволяет убедиться в правильности импорта данных и оценить их качество.
  • info() полезен, когда вы хотите получить общую информацию о вашем DataFrame, особенно если у вас большой объем данных. С его помощью можно быстро выявить, в каких столбцах есть пропущенные значения.
  • describe() является отличным инструментом первичного анализа. Благодаря ему можно быстро оценить распределение данных, выявить аномалии или ошибки в данных.

Заключение

Методы head(), info() и describe() - это ваш первый инструментарий при работе с новым набором данных. Они позволяют быстро понять, что содержится в данных, каковы их основные характеристики и структура. После этого начального анализа вы можете более осознанно приступить к дальнейшей предобработке и анализу данных.

Содержание: