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

Основные методы Pandas

Примеры базовых методов Pandas

До сих пор мы изучили три Pandas DataStructures и как их создавать. Из-за важности в обработке данных в реальном времени мы будем уделять основное внимание объекту DataFrame и обсуждать другие DataStructures.

МетодОписание
axesВозвращает список меток строк для оси строк.
dtypeВозвращает dtype объекта.
emptyЕсли Series пуст, возвращает True.
ndimВозвращает размерности базовых данных по определению.
sizeВозвращает количество элементов в базовых данных.
valuesВозвращает Series в виде ndarray.
head()Возвращает первые n строк.
tail()Возвращает последние n строк.
Далее мы создадим Series и посмотрим на все операции свойств всех списков.
 import pandas as pd
 import numpy as np
 # Создать Series с 100 случайными числами
 s = pd.Series(np.random.randn(4))
 print(s)

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

0   0.967853
1  -0.148368
2  -1.395906
3  -1.758394
dtype: float64

axes

Возвратить список меток Series

 import pandas as pd
 import numpy as np
 # Создать Series с 100 случайными числами
 s = pd.Series(np.random.randn(4))
 print ("Ось:")
 print(s.axes)

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

 Ось:
 [RangeIndex(start=0, stop=4, step=1)]

Результаты выше варьируются от 0 до 5 (то есть [0,1,2,3,4]).

empty

Возвратить булево значение, которое указывает, пуст ли объект. True означает, что объект пуст.

 import pandas as pd
 import numpy as np
 # Создать Series с 100 случайными числами
 s = pd.Series(np.random.randn(4))
 print ("Является ли Объект пустым?")
 print(s.empty)

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

Является ли Объект пустым?
False

ndim

Возвратить размерность объекта. По определению, Series является 1D-структурой данных, поэтому она возвращает

 import pandas as pd
 import numpy as np
 # Создаем серию из 4 случайных чисел
 s = pd.Series(np.random.randn(4))
 print s
 print ("Размеры объекта:")
 print(s.ndim)

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

     0   0.175898
1   0.166197
2  -0.609712
3  -1.377000
dtype: float64
Размеры объекта:
1

size

Возвратить размер (длину) Series.

 import pandas as pd
 import numpy as np
 # Создаем серию из 4 случайных чисел
 s = pd.Series(np.random.randn(2))
 print s
 print ("Размер объекта:")
 print(s.size)

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

0   3.078058
1  -1.207803
dtype: float64
Размер объекта:
2

values

Возвратить данные Series в виде массива.

 import pandas as pd
 import numpy as np
 # Создаем серию из 4 случайных чисел
 s = pd.Series(np.random.randn(4))
 print s
 print ("Реальные данные серии:")
 print(s.values)

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

0   1.787373
1  -0.605159
2   0.180477
3  -0.140922
dtype: float64
Реальные данные серии:
[1.78737302 -0.60515881 0.18047664 -0.1409218]

Head и Tail

Чтобы увидеть данные в начале и в конце Series или DataFrame, используйте методы head() и tail().

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

 import pandas as pd
 import numpy as np
 # Создаем серию из 4 случайных чисел
 s = pd.Series(np.random.randn(4))
 print ("Первая серия:")
 print s
 print ("Первые две строки последовательности данных:")
 print(s.head(2))

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

オリジナルのシリーズ:
0   0.720876
1  -0.765898
2   0.479221
3  -0.139547
dtype: float64
Первые две строки последовательности данных:
0   0.720876
1  -0.765898
dtype: float64

tail() Возвращает последние n строк (наблюдаемые значения индекса). По умолчанию отображается 5 элементов, но вы можете передать пользовательское число.

 import pandas as pd
 import numpy as np
 # Создаем серию из 4 случайных чисел
 s = pd.Series(np.random.randn(4))
 print("オリジナルのシリーズ:")
 print(s)
 print("Последние две строки последовательности данных:")
 print(s)tail(2)

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

オリジナルのシリーズ:
0 -0.655091
1 -0.881407
2 -0.608592
3 -2.341413
dtype: float64
Последние две строки последовательности данных:
2 -0.608592
3 -2.341413
dtype: float64

Основные функции DataFrame

Теперь让我们了解什么是DataFrame основные функции. В таблице перечислены важные атрибуты или методы, которые помогают в основных функциях DataFrame.

Атрибут/МетодОписание
TСтроки и столбцы меняются местами
axesВозвращает список, состоящий из уникальных членов по строковым меткам осей и меткам столбцов.
dtypesВозвращает dtypes этого объекта.
emptyЕсли NDFrame полностью пуст (нет элементов), то true; в противном случае false. Если длина любого оси равна 0.
ndimКоличество осей/размер массива.
shapeВозвращает кортеж, представляющий размер DataFrame.
sizeКоличество элементов в NDFrame.
valuesЧисловое представление NDFrame.
head()Возвращает первые n строк.
tail()Возвращает последние n строк.

Ниже мы создадим DataFrame и посмотрим на все способы работы с его свойствами.

Пример

 import pandas as pd
 import numpy as np
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наша последовательность данных:")
 print(df)

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

Наша последовательность данных:
    Возраст Имя  Оценка
0 25 Tom  4.23
1 26 James  3.24
2 25 Ricky  3.98
3 23 Vin  2.56
4 30 Steve  3.20
5 29 Smith  4.60
6 23 Jack  3.80

T (Transpose)

Возвращает transpose DataFrame. Строки и столбцы будут меняться.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Переворот последовательности данных:")
 print(df.T)

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

Переворот последовательности данных:
         0     1       2      3      4      5       6
Age      25    26      25     23     30     29      23
Name     Tom   James   Ricky  Vin    Steve  Smith   Jack
Rating   4.23  3.24    3.98   2.56   3.2    4.6     3.8

axes

Возврат список из row labels и column labels.

 import pandas as pd
 import numpy as np
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Row labels and column labels are:")
 print(df.axes)

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

  Row labels and column labels are:
 [RangeIndex(start=0, stop=7, step=1), Index([u'Age', u'Name', u'Rating'],
 dtype='object')]

dtypes

Возврат тип данных каждого столбца.

 import pandas as pd
 import numpy as np
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Тип данных каждой строки такой:")
 print(df.dtypes)

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

Тип данных каждой строки такой:
Age     int64
Name    object
Rating  float64
dtype: object

empty

Возврат булево значение, которое указывает, пуст ли объект; True означает, что объект пуст.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
  
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Is the object empty?")
 print(df.empty)

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

 Is the object empty?
 False

ndim

Возврат количество элементов объекта. По определению, DataFrame является 2D объектом.

 import pandas as pd
 import numpy as np
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш объект:")
 print df
 print ("The dimension of the object is:")
 print(df.ndim)

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

     Наш объект:
      Age    Name     Rating
0     25     Tom      4.23
1     26     James    3.24
2     25     Ricky    3.98
3     23     Vin      2.56
4     30     Steve    3.20
5     29     Smith    4.60
6     23     Jack     3.80
The dimension of the object is:
2

shape

Возврат tuple, представляющий размерность DataFrame. Tuple (a, b), где a — количество строк, b — количество столбцов.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
  
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш объект:")
 print df
 print ("The shape of the object is:")
 print(df.shape)

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

     Наш объект:
   Возраст Имя  Оценка
0  25    Tom     4.23
1  26    James   3.24
2  25    Ricky   3.98
3  23    Vin     2.56
4  30    Steve   3.20
5  29    Smith   4.60
6  23    Jack    3.80
Форма объекта:
(7, 3)

size

Возвращает количество элементов в DataFrame.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
  
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш объект:")
 print df
 print ("Общее количество элементов в нашем объекте:")
 print(df.size)

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

     Наш объект:
    Возраст Имя  Оценка
0 25 Tom  4.23
1 26 James  3.24
2 25 Ricky  3.98
3 23 Vin  2.56
4 30 Steve  3.20
5 29 Smith  4.60
6 23 Jack  3.80
Общее количество элементов в нашем объекте:
21

values

Возвращает реальные данные в DataFrame в виде NDarray.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
  
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш объект:")
 print df
 print ("Реальные данные в нашей таблице данных:")
 print(df.values)

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

     Наш объект:
    Возраст Имя  Оценка
0 25 Tom  4.23
1 26 James  3.24
2 25 Ricky  3.98
3 23 Vin  2.56
4 30 Steve  3.20
5 29 Smith  4.60
6 23 Jack  3.80
Реальные данные в нашей таблице данных:
[[25 'Tom' 4.23]
[26 'James' 3.24]
[25 'Ricky' 3.98]
[23 'Vin' 2.56]
[30 'Steve' 3.2]
[29 'Smith' 4.6]
[23 'Jack' 3.8]]

Head & Tail

Чтобы увидеть данные в начале и конце объекта DataFrame, используйте методы head() и tail(). Метод head() возвращает первые n строк (наблюдаемые значения индекса). По умолчанию отображается 5 элементов, но вы можете передать пользовательское число.

 import pandas as pd
 import numpy as np
  
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]),
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш таблица данных:")
 print df
 print ("Первые две строки таблицы данных:")
 print(df.head(2))

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

     Наш таблица данных:
    Возраст Имя  Оценка
0 25 Tom  4.23
1 26 James  3.24
2 25 Ricky  3.98
3 23 Vin  2.56
4 30 Steve  3.20
5 29 Smith  4.60
6 23 Jack  3.80
Первые две строки таблицы данных:
   Age   Name   Rating
0  25    Tom    4.23
1  26    James  3.24

tail() Возвращает последние n строк (наблюдаемые значения индекса). По умолчанию отображается 5 элементов, но вы можете передать пользовательское число.

 import pandas as pd
 import numpy as np
 # Создание словаря Series
 d = {'Name':pd.Series(['Tom','James','Ricky','Vin','Steve','Smith','Jack']),}
    'Age':pd.Series([25,26,25,23,30,29,23]), 
    'Rating':pd.Series([4.23,3.24,3.98,2.56,3.20,4.6,3.8])}
  
 # Создание DataFrame
 df = pd.DataFrame(d)
 print ("Наш фрейм данных:")
 print df
 print ("Последние две строки данных фрейма:")
 print(df.tail(2))

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

Наш фрейм данных:
    Возраст Имя  Оценка
0 25 Tom  4.23
1 26 James  3.24
2 25 Ricky  3.98
3 23 Vin  2.56
4 30 Steve  3.20
5 29 Smith  4.60
6 23 Jack  3.80
Последние две строки данных фрейма:
    Возраст Имя  Оценка
5 29 Smith  4.6
6 23 Jack  3.8