Python обрабатывает данные различных форматов в основном через две библиотеки, Pandas и Numpy. Мы уже видели важные особенности этих двух библиотек в предыдущих главах. В этой главе мы увидим некоторые базовые примеры из каждой библиотеки о том, как работать с данными.
Операции с данными в Numpy
Самый важный объект, определенный в NumPy, — это N-мерный тип массива, называемый ndarray. Описывает коллекцию предметов одного типа. К элементам в коллекции можно получить доступ, используя нулевой индекс. Экземпляр класса ndarray может быть создан с помощью различных процедур создания массива, описанных далее в руководстве. Основной ndarray создается с использованием функции массива в NumPy следующим образом:
numpy.array
Ниже приведены некоторые примеры обработки данных Numpy.
Пример 1
# more than one dimensions import numpy as np a = np.array([[1, 2], [3, 4]]) print a
Выход выглядит следующим образом —
[[1, 2] [3, 4]]
Пример 2
# minimum dimensions import numpy as np a = np.array([1, 2, 3,4,5], ndmin = 2) print a
Выход выглядит следующим образом —
[[1, 2, 3, 4, 5]]
Пример 3
# dtype parameter import numpy as np a = np.array([1, 2, 3], dtype = complex) print a
Выход выглядит следующим образом —
[ 1.+0.j, 2.+0.j, 3.+0.j]
Операции с данными в Pandas
Pandas обрабатывает данные через Series , Data Frame и Panel . Мы увидим несколько примеров из каждого из них.
Панды серии
Ряды — это одномерный помеченный массив, способный содержать данные любого типа (целочисленные, строковые, с плавающей точкой, объекты Python и т. Д.). Метки осей в совокупности называются индексами. Серия панд может быть создана с помощью следующего конструктора —
pandas.Series( data, index, dtype, copy)
пример
Здесь мы создаем серию из Numpy Array.
#import the pandas library and aliasing as pd import pandas as pd import numpy as np data = np.array(['a','b','c','d']) s = pd.Series(data) print s
Его вывод выглядит следующим образом —
0 a 1 b 2 c 3 d dtype: object
Панды DataFrame
Фрейм данных — это двумерная структура данных, т. Е. Данные выстраиваются в виде таблиц по строкам и столбцам. DataFrame pandas может быть создан с помощью следующего конструктора —
pandas.DataFrame( data, index, columns, dtype, copy)
Теперь давайте создадим индексированный DataFrame с использованием массивов.
import pandas as pd data = {'Name':['Tom', 'Jack', 'Steve', 'Ricky'],'Age':[28,34,29,42]} df = pd.DataFrame(data, index=['rank1','rank2','rank3','rank4']) print df
Его вывод выглядит следующим образом —
Age Name rank1 28 Tom rank2 34 Jack rank3 29 Steve rank4 42 Ricky
Панель Панд
Панель — это трехмерный контейнер данных. Термин « данные панели» является производным от эконометрики и частично отвечает за название панды — пан (эл) -да (та) -с.
Панель может быть создана с помощью следующего конструктора —
pandas.Panel(data, items, major_axis, minor_axis, dtype, copy)
В приведенном ниже примере мы создаем панель из dict объектов DataFrame
#creating an empty panel import pandas as pd import numpy as np data = {'Item1' : pd.DataFrame(np.random.randn(4, 3)), 'Item2' : pd.DataFrame(np.random.randn(4, 2))} p = pd.Panel(data) print p
Его вывод выглядит следующим образом —