Панды Упражнения, Практика, Решение
Панды
Pandas - это пакет Python, предоставляющий быстрые, гибкие и выразительные структуры данных, предназначенные для того, чтобы сделать работу с «реляционными» или «помеченными» данными как простой, так и интуитивно понятной. Он призван стать фундаментальным строительным блоком высокого уровня для практического анализа данных в реальном мире в Python.
Список упражнений панд:
- Серия данных Pandas [15 упражнений с решением]
- Pandas DataFrame [63 упражнения с решением]
- Запросы к базе данных Pandas HR [24 упражнения с решением]
- Анализ данных фильмов Pandas [17 упражнений с решением]
- Анализ данных Pandas Excel [25 упражнений с решением]
- Сводная таблица Pandas [32 упражнения с решением]
- Pandas Datetime [21 упражнение с решением]
- Pandas Practice Set-1 [65 упражнений с решением]
- Еще не все
Панды хорошо подходят для самых разных видов данных:
- Табличные данные с разнородными столбцами, как в таблице SQL или электронной таблице Excel
- Упорядоченные и неупорядоченные (не обязательно фиксированные частоты) данные временного ряда.
- Произвольные матричные данные с метками строк и столбцов
- Любая другая форма наблюдательных / статистических наборов данных.
Двоичные установщики: https://pypi.org/project/pandas
Источник Репозиторий: http://github.com/pandas-dev/pandas
Проблемы и идеи: https://github.com/pandas-dev/pandas/issues
Панды Основные команды:
Импортирует следующие команды для запуска:
импортировать панд как pd импортировать numpy как np
Ключ и Импорт | |
Д.Ф. | объект DataFrame панд |
s | объект серии панд |
Создать Dataframe:
import pandas as pd
df = pd.DataFrame({'X':[78,85,96,80,86], 'Y':[84,94,89,83,86],'Z':[86,97,96,72,83]});
print(df)
Пример вывода:
XYZ 0 78 84 86 1 85 94 97 2 96 89 96 3 80 83 72 4 86 86 83
Создать DataSeries:
import pandas as pd
s = pd.Series([2, 4, 6, 8, 10])
print(s)
Пример вывода:
0 2 1 4 2 6 3 8 4 10 dtype: int64
Создать тестовые объекты
pd.DataFrame (np.random.rand (20,5)) | 5 столбцов и 20 строк случайных чисел |
pd.Series (my_list) | Создать серию из итерируемого my_list |
df.index = pd.date_range ('1900/1/30', period = df.shape [0]) | Добавить индекс даты |
Просмотр / проверка данных
df.head (п) | Первые n строк DataFrame |
df.tail (п) | Последние n строк DataFrame |
df.shape | Количество строк и столбцов |
df.info () | Индекс, тип данных и информация о памяти |
df.describe () | Сводная статистика по числовым столбцам |
s.value_counts (dropna = False) | Просмотр уникальных значений и количества |
df.apply (pd.Series.value_counts) | Уникальные значения и количество для всех столбцов |
выбор
DF [Col] | Возвращает столбец с меткой col как Series |
df [[col1, col2]] | Возвращает столбцы как новый DataFrame |
s.iloc [0] | Выбор по позиции |
s.loc [ 'index_one'] | Выбор по индексу |
df.iloc [0 ,:] | Первый ряд |
df.iloc [0,0] | Первый элемент первого столбца |
Очистка данных
df.columns = ['a', 'b', 'c'] | Переименовать столбцы |
pd.isnull () | Проверяет нулевые значения, возвращает Boolean Arrray |
pd.notnull () | Напротив pd.isnull () |
df.dropna () | Удалить все строки, содержащие нулевые значения |
df.dropna (ось = 1) | Удалить все столбцы, которые содержат нулевые значения |
df.dropna (ось = 1, молоти = п) | Удалить все строки имеют не более n ненулевых значений |
df.fillna (х) | Заменить все нулевые значения на x |
s.fillna (s.mean ()) | Заменить все нулевые значения на среднее |
s.astype (с плавающей точкой) | Преобразовать тип данных серии, чтобы плавать |
s.replace (1, 'один') | Заменить все значения, равные 1, на «один» |
s.replace ([2,3], ['two', 'three']) | Заменить все 2 на «два» и 3 на «три» |
df.rename (колонки = лямбда х: х + 1) | Массовое переименование столбцов |
df.rename (columns = {'old_name': 'new_ name'}) | Выборочное переименование |
df.set_index ( 'column_one') | Изменить индекс |
df.rename (index = lambda x: x + 1) | Массовое переименование индекса |
Фильтр, Сортировка и Группировка
df [df [col]> 0.6] | Строки, в которых столбец col больше 0,6 |
df [(df [col]> 0,6) & (df [col] <0,8)] | Ряды, где 0,8> кол> 0,6 |
df.sort_values (col1) | Сортировать значения по col1 в порядке возрастания |
df.sort_values (col2, восходящий = False) | Сортировать значения по col2 в порядке убывания. |
df.sort_values ([col1, col2], восходящие = [True, False]) | Сортировать значения по col1 в порядке возрастания, а затем col2 по убыванию |
df.groupby (COL) | Возвращает объект groupby для значений из одного столбца |
df.groupby ([col1, col2]) | Возвращает объект groupby для значений из нескольких столбцов |
df.groupby (col1) [col2] | Возвращает среднее значение в столбце col2, сгруппированное по значениям в столбце col1. |
df.pivot_table (индекс = col1 значение = [col2, col3], aggfunc = среднее значение) | Создайте сводную таблицу, которая группирует по col1 и вычисляет среднее значение col2 и col3 |
df.groupby (col1) .agg (np.mean) | Найти среднее значение по всем столбцам для каждой уникальной группы col1 |
df.apply (np.mean) | Примените функцию np.mean () для каждого столбца. |
nf.apply (np.max, ось = 1) | Примените функцию np.max () для каждой строки. |
Регистрация / комбинирование
df1.append (df2) | Добавьте строки в df1 в конец df2 (столбцы должны быть идентичны) |
pd.concat ([df1, df2], axis = 1) | Добавьте столбцы в df1 в конец df2 (строки должны быть идентичны) |
df1.join (df2, on = col1, how = 'inner') | Стиль SQL объединяет столбцы в df1 со столбцами в df2, где строки для col имеют одинаковые значения. «Как» может быть «левый», «правый», «внешний» или «внутренний» |
Статистика
df.describe () | Сводная статистика по числовым столбцам |
df.mean () | Возвращает среднее значение всех столбцов |
df.corr () | Возвращает корреляцию между столбцами в DataFrame |
df.count () | Возвращает количество ненулевых значений в каждом столбце DataFrame. |
df.max () | Возвращает самое высокое значение в каждом столбце |
df.min () | Возвращает самое низкое значение в каждом столбце |
df.median () | Возвращает медиану каждого столбца |
df.std () | Возвращает стандартное отклонение каждого столбца |
Импорт данных
pd.read_csv (имя файла) | Из файла CSV |
pd.read_table (имя файла) | Из текстового файла с разделителями (например, TSV) |
pd.read_excel (имя файла) | Из файла Excel |
pd.read_sql (запрос, объект_соединения) | Читать из таблицы / базы данных SQL |
pd.read_json (json_string) | Читать из строки, URL или файла в формате JSON. |
pd.read_html (URL) | Анализирует html URL, строку или файл и извлекает таблицы в список фреймов данных. |
pd.read_clipboard () | Берет содержимое вашего буфера обмена и передает его read_table () |
pd.DataFrame (ДИКТ) | От дикта, ключи для имен столбцов, значения для данных в виде списков |
Экспорт данных
df.to_csv (имя файла) | Записать в файл CSV |
df.to_excel (имя файла) | Написать в файл Excel |
df.to_sql (имя_таблицы, объект_соединения) | Написать в таблицу SQL |
df.to_json (имя файла) | Записать в файл в формате JSON |
[Хотите внести свой вклад в упражнения Python Pandas? Отправьте ваш код (прикрепленный к ZIP-файлу) нам на w3resource [at] yahoo [dot] com. Пожалуйста, избегайте материалов, защищенных авторским правом.]
Новый контент: Composer: менеджер зависимостей для PHP , R программирования