Python Pandas - Funcionalidad básica

A estas alturas, aprendimos sobre las tres estructuras de datos de Pandas y cómo crearlas. Nos centraremos principalmente en los objetos DataFrame debido a su importancia en el procesamiento de datos en tiempo real y también discutiremos algunas otras estructuras de datos.

Funcionalidad básica de la serie

No Señor. Atributo o método y descripción
1

axes

Devuelve una lista de las etiquetas del eje de fila.

2

dtype

Devuelve el dtype del objeto.

3

empty

Devuelve True si la serie está vacía.

4

ndim

Devuelve el número de dimensiones de los datos subyacentes, por definición 1.

5

size

Devuelve el número de elementos de los datos subyacentes.

6

values

Devuelve la serie como ndarray.

7

head()

Devuelve las primeras n filas.

8

tail()

Devuelve las últimas n filas.

Creemos ahora una Serie y veamos todas las operaciones de atributos tabulados anteriores.

Ejemplo

import pandas as pd
import numpy as np

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

Sus output es como sigue -

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

ejes

Devuelve la lista de las etiquetas de la serie.

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

Sus output es como sigue -

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

El resultado anterior es un formato compacto de una lista de valores de 0 a 5, es decir, [0,1,2,3,4].

vacío

Devuelve el valor booleano que indica si el objeto está vacío o no. Verdadero indica que el objeto está vacío.

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

Sus output es como sigue -

Is the Object empty?
False

ndim

Devuelve el número de dimensiones del objeto. Por definición, una serie es una estructura de datos 1D, por lo que devuelve

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

Sus output es como sigue -

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

The dimensions of the object:
1

Talla

Devuelve el tamaño (longitud) de la serie.

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

Sus output es como sigue -

0   3.078058
1  -1.207803
dtype: float64

The size of the object:
2

valores

Devuelve los datos reales de la serie como una 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

Sus output es como sigue -

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 ]

La cabeza de la cola

Para ver una pequeña muestra de un objeto Series o DataFrame, use los métodos head () y tail ().

head() devuelve el primero nfilas (observe los valores del índice). El número predeterminado de elementos para mostrar es cinco, pero puede pasar un 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)

Sus output es como sigue -

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() devuelve el último nfilas (observe los valores del índice). El número predeterminado de elementos para mostrar es cinco, pero puede pasar un 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)

Sus output es como sigue -

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

Funcionalidad básica de DataFrame

Entendamos ahora qué es la funcionalidad básica de DataFrame. Las siguientes tablas enumeran los atributos o métodos importantes que ayudan en la funcionalidad básica de DataFrame.

No Señor. Atributo o método y descripción
1

T

Transpone filas y columnas.

2

axes

Devuelve una lista con las etiquetas del eje de fila y las etiquetas del eje de columna como únicos miembros.

3

dtypes

Devuelve los dtypes de este objeto.

4

empty

Verdadero si NDFrame está completamente vacío [sin elementos]; si alguno de los ejes tiene longitud 0.

5

ndim

Número de ejes / dimensiones de matriz.

6

shape

Devuelve una tupla que representa la dimensionalidad del DataFrame.

7

size

Número de elementos del NDFrame.

8

values

Representación voluminosa de NDFrame.

9

head()

Devuelve las primeras n filas.

10

tail()

Devuelve las últimas n filas.

Creemos ahora un DataFrame y veamos cómo funcionan los atributos mencionados anteriormente.

Ejemplo

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

Sus output es como sigue -

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 (transponer)

Devuelve la transposición del DataFrame. Las filas y columnas se intercambiarán.

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

Sus output es como sigue -

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

ejes

Devuelve la lista de etiquetas de eje de fila y etiquetas de eje de columna.

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

Sus output es como sigue -

Row axis labels and column axis labels are:

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

dtipos

Devuelve el tipo de datos de cada columna.

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

Sus output es como sigue -

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

vacío

Devuelve el valor booleano que indica si el objeto está vacío o no; Verdadero indica que el objeto está vacío.

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

Sus output es como sigue -

Is the object empty?
False

ndim

Devuelve el número de dimensiones del objeto. Por definición, DataFrame es un 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

Sus output es como sigue -

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

Devuelve una tupla que representa la dimensionalidad del DataFrame. Tupla (a, b), donde a representa el número de filas yb representa el número de columnas.

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

Sus output es como sigue -

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)

Talla

Devuelve el número de elementos del 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

Sus output es como sigue -

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

Devuelve los datos reales en el DataFrame como un 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

Sus output es como sigue -

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]]

La cabeza de la cola

Para ver una pequeña muestra de un objeto DataFrame, use el head() y métodos tail (). head() devuelve el primero nfilas (observe los valores del índice). El número predeterminado de elementos para mostrar es cinco, pero puede pasar un 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)

Sus output es como sigue -

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() devuelve el último nfilas (observe los valores del índice). El número predeterminado de elementos para mostrar es cinco, pero puede pasar un 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)

Sus output es como sigue -

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