Python Pandas - Funcionalidade básica

Até agora, aprendemos sobre as três estruturas de dados do Pandas e como criá-las. Vamos nos concentrar principalmente nos objetos DataFrame por causa de sua importância no processamento de dados em tempo real e também discutir algumas outras DataStructures.

Funcionalidade básica da série

Sr. Não. Atributo ou método e descrição
1

axes

Retorna uma lista dos rótulos dos eixos das linhas

2

dtype

Retorna o dtype do objeto.

3

empty

Retorna True se a série estiver vazia.

4

ndim

Retorna o número de dimensões dos dados subjacentes, por definição 1.

5

size

Retorna o número de elementos nos dados subjacentes.

6

values

Retorna a série como ndarray.

7

head()

Retorna as primeiras n linhas.

8

tail()

Retorna as últimas n linhas.

Vamos agora criar uma série e ver a operação de todos os atributos tabulados acima.

Exemplo

import pandas as pd
import numpy as np

#Create a series with 100 random numbers
s = pd.Series(np.random.randn(4))
print s

Está output é o seguinte -

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

eixos

Retorna a lista de rótulos da série.

import pandas as pd
import numpy as np

#Create a series with 100 random numbers
s = pd.Series(np.random.randn(4))
print ("The axes are:")
print s.axes

Está output é o seguinte -

The axes are:
[RangeIndex(start=0, stop=4, step=1)]

O resultado acima é um formato compacto de uma lista de valores de 0 a 5, ou seja, [0,1,2,3,4].

vazio

Retorna o valor booleano informando se o objeto está vazio ou não. True indica que o objeto está vazio.

import pandas as pd
import numpy as np

#Create a series with 100 random numbers
s = pd.Series(np.random.randn(4))
print ("Is the Object empty?")
print s.empty

Está output é o seguinte -

Is the Object empty?
False

ndim

Retorna o número de dimensões do objeto. Por definição, uma série é uma estrutura de dados 1D, então ela retorna

import pandas as pd
import numpy as np

#Create a series with 4 random numbers
s = pd.Series(np.random.randn(4))
print s

print ("The dimensions of the object:")
print s.ndim

Está output é o seguinte -

0   0.175898
1   0.166197
2  -0.609712
3  -1.377000
dtype: float64

The dimensions of the object:
1

Tamanho

Retorna o tamanho (comprimento) da série.

import pandas as pd
import numpy as np

#Create a series with 4 random numbers
s = pd.Series(np.random.randn(2))
print s
print ("The size of the object:")
print s.size

Está output é o seguinte -

0   3.078058
1  -1.207803
dtype: float64

The size of the object:
2

valores

Retorna os dados reais da série como uma matriz.

import pandas as pd
import numpy as np

#Create a series with 4 random numbers
s = pd.Series(np.random.randn(4))
print s

print ("The actual data series is:")
print s.values

Está output é o seguinte -

0   1.787373
1  -0.605159
2   0.180477
3  -0.140922
dtype: float64

The actual data series is:
[ 1.78737302 -0.60515881 0.18047664 -0.1409218 ]

Cabeça e cauda

Para visualizar uma pequena amostra de um objeto Series ou DataFrame, use os métodos head () e tail ().

head() retorna o primeiro nlinhas (observe os valores do índice). O número padrão de elementos a serem exibidos é cinco, mas você pode passar um número personalizado.

import pandas as pd
import numpy as np

#Create a series with 4 random numbers
s = pd.Series(np.random.randn(4))
print ("The original series is:")
print s

print ("The first two rows of the data series:")
print s.head(2)

Está output é o seguinte -

The original series is:
0   0.720876
1  -0.765898
2   0.479221
3  -0.139547
dtype: float64

The first two rows of the data series:
0   0.720876
1  -0.765898
dtype: float64

tail() retorna o último nlinhas (observe os valores do índice). O número padrão de elementos a serem exibidos é cinco, mas você pode passar um número personalizado.

import pandas as pd
import numpy as np

#Create a series with 4 random numbers
s = pd.Series(np.random.randn(4))
print ("The original series is:")
print s

print ("The last two rows of the data series:")
print s.tail(2)

Está output é o seguinte -

The original series is:
0 -0.655091
1 -0.881407
2 -0.608592
3 -2.341413
dtype: float64

The last two rows of the data series:
2 -0.608592
3 -2.341413
dtype: float64

Funcionalidade básica do DataFrame

Vamos agora entender o que é DataFrame Basic Functionality. As tabelas a seguir listam os atributos ou métodos importantes que ajudam na funcionalidade básica do DataFrame.

Sr. Não. Atributo ou método e descrição
1

T

Transpõe linhas e colunas.

2

axes

Retorna uma lista com os rótulos do eixo da linha e rótulos do eixo da coluna como os únicos membros.

3

dtypes

Retorna os dtypes neste objeto.

4

empty

Verdadeiro se NDFrame estiver totalmente vazio [sem itens]; se algum dos eixos tiver comprimento 0.

5

ndim

Número de eixos / dimensões da matriz.

6

shape

Retorna uma tupla que representa a dimensionalidade do DataFrame.

7

size

Número de elementos no NDFrame.

8

values

Representação numpy de NDFrame.

9

head()

Retorna as primeiras n linhas.

10

tail()

Retorna as últimas n linhas.

Vamos agora criar um DataFrame e ver como funcionam os atributos mencionados acima.

Exemplo

import pandas as pd
import numpy as np

#Create a Dictionary of 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])}

#Create a DataFrame
df = pd.DataFrame(d)
print ("Our data series is:")
print df

Está output é o seguinte -

Our data series is:
    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

T (transpor)

Retorna a transposição do DataFrame. As linhas e colunas serão trocadas.

import pandas as pd
import numpy as np
 
# Create a Dictionary of 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])}

# Create a DataFrame
df = pd.DataFrame(d)
print ("The transpose of the data series is:")
print df.T

Está output é o seguinte -

The transpose of the data series is:
         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

eixos

Retorna a lista de rótulos de eixo de linha e rótulos de eixo de coluna.

import pandas as pd
import numpy as np

#Create a Dictionary of 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])}

#Create a DataFrame
df = pd.DataFrame(d)
print ("Row axis labels and column axis labels are:")
print df.axes

Está output é o seguinte -

Row axis labels and column axis labels are:

[RangeIndex(start=0, stop=7, step=1), Index([u'Age', u'Name', u'Rating'],
dtype='object')]

dtypes

Retorna o tipo de dados de cada coluna.

import pandas as pd
import numpy as np

#Create a Dictionary of 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])}

#Create a DataFrame
df = pd.DataFrame(d)
print ("The data types of each column are:")
print df.dtypes

Está output é o seguinte -

The data types of each column are:
Age     int64
Name    object
Rating  float64
dtype: object

vazio

Retorna o valor booleano informando se o objeto está vazio ou não; True indica que o objeto está vazio.

import pandas as pd
import numpy as np
 
#Create a Dictionary of 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])}
 
#Create a DataFrame
df = pd.DataFrame(d)
print ("Is the object empty?")
print df.empty

Está output é o seguinte -

Is the object empty?
False

ndim

Retorna o número de dimensões do objeto. Por definição, DataFrame é um objeto 2D.

import pandas as pd
import numpy as np

#Create a Dictionary of 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])}

#Create a DataFrame
df = pd.DataFrame(d)
print ("Our object is:")
print df
print ("The dimension of the object is:")
print df.ndim

Está output é o seguinte -

Our object is:
      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

forma

Retorna uma tupla que representa a dimensionalidade do DataFrame. Tupla (a, b), onde a representa o número de linhas eb representa o número de colunas.

import pandas as pd
import numpy as np
 
#Create a Dictionary of 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])}
 
#Create a DataFrame
df = pd.DataFrame(d)
print ("Our object is:")
print df
print ("The shape of the object is:")
print df.shape

Está output é o seguinte -

Our object is:
   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 shape of the object is:
(7, 3)

Tamanho

Retorna o número de elementos no DataFrame.

import pandas as pd
import numpy as np
 
#Create a Dictionary of 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])}
 
#Create a DataFrame
df = pd.DataFrame(d)
print ("Our object is:")
print df
print ("The total number of elements in our object is:")
print df.size

Está output é o seguinte -

Our object is:
    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 total number of elements in our object is:
21

valores

Retorna os dados reais no DataFrame como um NDarray.

import pandas as pd
import numpy as np
 
#Create a Dictionary of 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])}
 
#Create a DataFrame
df = pd.DataFrame(d)
print ("Our object is:")
print df
print ("The actual data in our data frame is:")
print df.values

Está output é o seguinte -

Our object is:
    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 actual data in our data frame is:
[[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]]

Cabeça e cauda

Para visualizar uma pequena amostra de um objeto DataFrame, use o head() e os métodos tail (). head() retorna o primeiro nlinhas (observe os valores do índice). O número padrão de elementos a serem exibidos é cinco, mas você pode passar um número personalizado.

import pandas as pd
import numpy as np
 
#Create a Dictionary of 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])}

#Create a DataFrame
df = pd.DataFrame(d)
print ("Our data frame is:")
print df
print ("The first two rows of the data frame is:")
print df.head(2)

Está output é o seguinte -

Our data frame is:
    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 first two rows of the data frame is:
   Age   Name   Rating
0  25    Tom    4.23
1  26    James  3.24

tail() retorna o último nlinhas (observe os valores do índice). O número padrão de elementos a serem exibidos é cinco, mas você pode passar um número personalizado.

import pandas as pd
import numpy as np

#Create a Dictionary of 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])}
 
#Create a DataFrame
df = pd.DataFrame(d)
print ("Our data frame is:")
print df
print ("The last two rows of the data frame is:")
print df.tail(2)

Está output é o seguinte -

Our data frame is:
    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 last two rows of the data frame is:
    Age   Name    Rating
5   29    Smith    4.6
6   23    Jack     3.8