English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Series Pandas

Основные операции Pandas Series

pandas.Series

Структура Series是这样的:

pandas.Series(data, index, dtype, copy)

Параметры конструктора такие:

data: Данные могут быть в различных форматах, например ndarray, list, константы index: Значение индекса должно быть уникальным и хэшируемым, и длина должна быть равна длине данных. Если индекс не передан, то по умолчанию используется np.arange(n) dtype: dtype используется для типа данных. Если None, то тип данных будет вычислен автоматически copy: копировать данные. По умолчанию фальшиво

Series можно создавать с использованием различных входных данных, например

Array Dict Скалярное значение или константа

Создание пустой Series

 >>> # Импортировать пакет pandas и дать ему别名
 >>> import pandas as pd
 >>> s = pd.Series()
 >>> print(s)
 Series([], dtype: float64)

Создание Series из ndarray

Если данные являются ndarray, то переданный индекс должен иметь такое же количество элементов. Если индекс не передан, то по умолчанию индекс будет range(n), где n — длина массива, то есть [0, 1, 2, 3…]. Диапазон (len(array) - 1).

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 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

Мы не передали ningún índice, поэтому по умолчанию он назначает диапазон индексов от 0 до len(data)-1, то есть от 0 до 3.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 import numpy as np
 data = np.array(['a', 'b', 'c', 'd'])
 s = pd.Series(data, index=[100, 101, 102, 103])
 print(s)

Результат выполнения:

 100 a
 101 b
 102 c
 103 d
 dtype: object

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

Создание Series из словаря

Словарь может быть передан в качестве входных данных. Если индекс не указан, все ключи словаря используются для создания индекса в порядке сортировки. Если передан индекс, значения данных для соответствующих меток индекса будут извлечены.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 import numpy as np
 data = {'a': 0., 'b': 1., 'c': 2.}
 s = pd.Series(data)
 print(s)

Результат выполнения:

 a 0.0
 b 1.0
 c 2.0
 dtype: float64

Ключи словаря используются для создания индекса.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 import numpy as np
 data = {

Результат выполнения:

 b 1.0
 c 2.0
 d NaN
 a 0.0
 dtype: float64

Порядок индексов сохраняется, отсутствующие элементы заполняются NaN (нечисловыми)

Создание Series из скаляра

Если данные являются скалярным значением, то необходимо предоставить индекс. Это значение будет повторяться, чтобы соответствовать длине индекса

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 import numpy as np
 s = pd.Series(5, index=[0, 1, 2, 3])
 print(s)

Результат выполнения:

 
 0 5
 1 5
 2 5
 3 5
 dtype: int64

Доступ к данным с позиционным Series

Данные в Series можно обращаться, как и в ndarray.
Искать первый элемент. Важно отметить, что счет элементов массива начинается с нуля, что означает, что первый элемент хранится в нулевой позиции, и так далее.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
 # Поиск первого элемента данных
 print(s[0])

Результат выполнения:

1

Поиск первых трёх элементов Series. Если добавить перед ними, то будут извлечены все проекты с этого индекса. Если использовать два параметра (разделенные :), то проекты между этими индексами (не включая конечный индекс)

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
 # Поиск первых трёх элементов
 print(s[:3])

Результат выполнения:

 a 1
 b 2
 c 3
 dtype: int64

Поиск последних трех элементов.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
 # Поиск последних трех элементов
 print(s[-3:])

Результат выполнения:

 c 3
 d 4
 e 5
 dtype: int64

Поиск данных с помощью меток (индексов)

Series behaves like a fixed-size dictionary and can get and set values by index labels.
Поиск одного элемента с помощью значения метки индекса.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 s = pd.Series([1,2,3,4,5],index = [

Результат выполнения:

 1

Поиск нескольких элементов с помощью списка значений меток индекса.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 s = pd.Series([1,2,3,4,5],index = [

Результат выполнения:

 
 a 1
 c 3
 d 4
 dtype: int64

Если отсутствует метка, будет вызван исключение.

 # Имя файла: pandas.py
 # Автор: ru.oldtoolbag.com 
 # Импорт пакета pandas с别名
 import pandas as pd
 s = pd.Series([1,2,3,4,5],index = ['a','b','c','d','e'])
 # Поиск нескольких элементов
 print(s['f'])

Результат выполнения:

   ...
 KeyError: 'f'