27 000 слов, 103 дня, 16 статей: простой анализ данных Pandas

искусственный интеллект анализ данных pandas
27 000 слов, 103 дня, 16 статей: простой анализ данных Pandas

Глубокое понимание анализа данных Pandas

Всем привет, меня зовут Питер~

Первая версия «Углубленного анализа данных Pandas» наконец-то может встретиться с вами! В конце статьи есть способ получить информацию

От первой статьи Pandas от 24 апреля: «Все начинается с функции взрыва» до вчерашней «Иллюстрация функции вращения оси Pandas: стек и распаковка» от 5 августа, в общей сложности прошло 103 дня, пусть Pandas станет свидетелем этого:

Две строки кода сообщают вам разницу во времени между двумя датами, это Pandas ?

Что такое панды

Что такое Панды? Процитировать отрывок изОфициальный китайский сайт Pandasобъяснение:

PandasЭто основная библиотека поддержки анализа данных Python, предоставляющая быстрые, гибкие и явные структуры данных, предназначенные для простой и интуитивно понятной обработки реляционных и размеченных данных. Цель Pandas — стать важным передовым инструментом для практики анализа данных Python и реальных боевых действий, а его долгосрочная цель — статьСамый мощный и гибкий инструмент анализа данных с открытым исходным кодом, который может поддерживать любой язык

Простое объяснение: Pandas — самая мощная библиотека для обработки и анализа данных в третьей библиотеке Python!

Какие данные может обрабатывать Pandas?

Pandas — это мощная библиотека для анализа данных, так с какими типами данных она может работать?

  • Табличные данные, такие как SQL и Excel
  • Упорядоченные и неупорядоченные данные временных рядов, обычно используемые в финансах
  • Матрица данных с метками строк и столбцов, потому что сама Pandas также разработана на основе Numpy.

что я написал за 103 дня

Всего за эти 103 дня было обновлено 16 статей о пандах:

Часть 1: Все начинается с функции взрыва

В этой статье в основном объясняется использование функции в Pandas: взорвать

Он реализует функцию, аналогичную функции взрыва в улье: считать информацию справа от информации слева

Часть 2: Данные о типе серии

В Pandas есть два типа данных, один из которых — Series.

Серия представляет собой структуру одномерного массива, которая состоит только из индекса (index) и значения (value).

Часть 3: Создание DataFrame: 10 способов выбора

В третьей статье представлена ​​одна из наиболее часто используемых структур данных в Pandas: 10 способов создания DataFrame.

DataFrame — это двумерная структура данных, объединяющая несколько Series по столбцу, каждый столбец вынесен как Series, помимо индекса и значения, есть еще и столбцы

После того, как я написал это, я вспомнил, что пропустил путь:Создать прямо из буфера обмена. Когда у нас есть готовые данные в буфере обмена, мы можем создать их напрямую, выполнив следующий оператор:

df = pd.read_clipboard()
df

Часть 4: Все виды операций по извлечению сердитых панд

В первых двух статьях было представлено создание двух структур данных, Series и DataFrame, затем следующее введение: как получить из него нужные нам данные.

Есть действительно разные способы получения чисел в Pandas, поэтому в общей сложности ушло 3 статьи. Методы в четвертой статье в основном:

Глава 5: Нравится! Различные данные фильтрации Pandas

Это также статья о выборке чисел в Pandas, в которой в основном представлены:

Часть 6: Последняя часть: Играем с пандами

В последней статье рассказывается, как получать числа в Pandas, с акцентом на 3 пары функций: они используются с небольшими различиями.

Часть 7: Краеугольный камень обработки данных: исследование данных

Прежде чем мы получим данные и импортируем их в Pandas для последующей обработки, нам необходимо проверить основную информацию о данных и получить предварительное представление о данных, которое обычно включает следующую информацию:

Часть 8: Операции с типами данных Pandas

Когда Pandas обрабатывает данные, очень важно обеспечить точность типа данных, В седьмой статье в основном представлены 3 распространенных метода преобразования типов данных + методы проверки типа данных:

  • Кастинг с помощью функции astype()
  • Преобразование типов данных с помощью пользовательских функций
  • Используйте функции, предоставляемые Pandas, такие как to_numeric(), to_datetime() и т. д. для преобразования
  • Использование функции select_dtypes

Часть 9: Иллюстрация группового механизма Pandas

Групповая статистика — распространенный метод в работе и технике обработки данных. В этой статье подробно объясняется внутреннее устройство groupby.

Часть 10: Иллюстрация рангового механизма Pandas

В этой статье в основном сравниваются ранжирование и оконные функции в SQL, а также рассказывается, как использовать ранговую функцию Pandas для достижения:

  • row_number: последовательное ранжирование, метод=первый в функции ранжирования
  • ранг: рейтинг прыжков, метод=мин в функции ранга
  • плотное ранжирование: плотное ранжирование, method=dense в функции ранжирования

Часть 11: Иллюстрация механизма сортировки Pandas sort_values

С рейтингом необходимо достичь рейтинга. Функция сортировки sort_values ​​обычно используется очень часто, часто необходимо выполнить анализ TopN данных о продажах, а также необходимо отсортировать статистические данные после группировки.

Часть 12: графическая обработка отсутствующих значений Pandas

В общем, данные не идеальны. Нам необходимо выполнять различные операции обработки на ранней стадии, и обработка пропущенных значений — одна из них.

В этой статье в основном рассказывается об использовании Pandas для работы с пропущенными значениями, в том числе: оценка пропущенных значений, удаление пропущенных значений и заполнение пропущенных значений:

  • df.isnull(), df.notnull(): две функции являются обратными друг другу
  • df.isna(): эквивалентно df.isnull()
  • df.dropna(): удалить недостающие значения
  • df.fillna(): заполнить пропущенные значения

Часть 13: Графическая обработка повторяющихся значений Pandas

Также обычно есть дублирующие значения в данных. Эта статья в основном вводит два способа решения дубликатовных значений:

  • дублированный(): определить, есть ли повторяющиеся значения
  • drop_duplicates() : удаляет повторяющиеся значения

Часть 14. Сложный SQL: иллюстрация слияния данных в Pandas

В реальных бизнес-требованиях наши данные могут находиться в разных таблицах базы данных.SQL может быть реализован через различные соединения.В Pandas это в основном реализовано через функцию слияния.

В этой статье подробно описано, как используются различные параметры слияния:

pd.merge(left,   # 待合并的2个数据框
         right, 
         how='inner',  # ‘left’, ‘right’, ‘outer’, ‘inner’, ‘cross’
         on=None, # 连接的键,默认是相同的键
         left_on=None,  # 指定不同的连接字段:键不同,但是键的取值有相同的内容
         right_on=None, 
         left_index=False,   # 根据索引来连接
         right_index=False, 
         sort=False, # 是否排序
         suffixes=('_x', '_y'),   # 改变后缀
         copy=True, 
         indicator=False,   # 显示字段来源
         validate=None)

Часть 15: Графическое слияние данных Pandas: объединение, объединение, добавление

В дополнение к обычно используемой функции слияния для слияния данных в Pandas есть три функции, которые также могут выполнять часть функции слияния: concat, join, append; особенно concat, которая на самом деле довольно часто используется.

конкат параметр:

pandas.concat(objs,  # 合并对象
              axis=0,   # 合并方向,默认是0纵轴方向
              join='outer', # 合并取的是交集inner还是并集outer
              ignore_index=False, # 合并之后索引是否重新
              keys=None, # 在行索引的方向上带上原来数据的名字;主要是用于层次化索引,可以是任意的列表或者数组、元组数据或者列表数组
              levels=None, # 指定用作层次化索引各级别上的索引,如果是设置了keys
              names=None, # 行索引的名字,列表形式
              verify_integrity=False, # 检查行索引是否重复;有则报错
              sort=False, # 对非连接的轴进行排序
              copy=True   # 是否进行深拷贝
             )

параметр соединения:

dataframe.join(other,  # 待合并的另一个数据框
        on=None,  # 连接的键
        how='left',   # 连接方式:‘left’, ‘right’, ‘outer’, ‘inner’ 默认是left
        lsuffix='',  # 左边(第一个)数据框相同键的后缀
        rsuffix='',  # 第二个数据框的键的后缀
        sort=False)  # 是否根据连接的键进行排序;默认False

Добавьте основные параметры:

DataFrame.append(
  other,  # 追加对象
  ignore_index=False,  # 是否保留原索引
  verify_integrity=False, # 检查行索引是否重复;有则报错
  sort=False)

Часть 16: графическая функция поворота оси Pandas стек и распаковка

stack и unstack также являются парой функций, которые работают обратно друг другу. Их функция состоит в том, чтобы вращать ось данных Pandas. Характеристики двух:

  • стек: повернуть столбцы данных в индексы строк
  • распаковать: повернуть индекс строки данных в столбцы
  • Операция по умолчанию для обоих - самый внутренний слой

Две картинки с официального сайта, поясняющие их использование:

Что особенного в статье

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

  • Богатые кейсы: каждая статья проиллюстрирована симуляцией
  • Картинки и тексты: В статье используется много графики для объяснения использования функций, что более интуитивно понятно и углубляет впечатление.
  • Близко к реальности: многие смоделированные данные могут быть непосредственно применены к реальным бизнес-сценариям.

Следовать за

Контент, написанный до сих пор, на самом деле является лишь верхушкой айсберга библиотеки Pandas, и еще много контента не было разработано. Но если читатель сможет внимательно прочитать его и на самом деле запустить и понять код самостоятельно, я считаю, что все равно будет большой выигрыш.Начало работы с пандами должно задавать (слушать) вопрос (вам), а не (дуть), большой (корова)! ?

Последующие статьи Pandas будут постоянно обновляться, что будет длительным процессом. В будущем будут представлены более продвинутые навыки использования и кейсы, чтобы помочь читателям освоить использование Pandas.

Как получить: обратите внимание на публичный аккаунт [You Er Hut] и ответьте Pandas, чтобы получить его.