Introducción a los objetos de Pandas
In [1]:
import numpy as np
import pandas as pd
El objeto Series
de Pandas¶
In [2]:
data = pd.Series([0.25, 0.5, 0.75, 1.0])
data
Out[2]:
In [3]:
data.values
Out[3]:
In [4]:
data.index
Out[4]:
In [5]:
data[1]
Out[5]:
In [6]:
data[1:3]
Out[6]:
Series
es una generalización de NumPy array¶
In [7]:
data = pd.Series([0.25, 0.5, 0.75, 1.0],
index=['a', 'b', 'c', 'd'])
data
Out[7]:
In [8]:
data['b']
Out[8]:
In [9]:
data = pd.Series([0.25, 0.5, 0.75, 1.0],
index=[2, 5, 3, 7])
data
Out[9]:
In [10]:
data[5]
Out[10]:
Series
como diccionarios especializados¶
In [11]:
population_dict = {'California': 38332521,
'Texas': 26448193,
'New York': 19651127,
'Florida': 19552860,
'Illinois': 12882135}
population = pd.Series(population_dict)
population
Out[11]:
In [12]:
population['California']
Out[12]:
In [13]:
population['California':'Illinois']
Out[13]:
Construcción de un objeto Series
¶
>>> pd.Series(data, index=index)
In [14]:
pd.Series([2, 4, 6])
Out[14]:
In [15]:
pd.Series(5, index=[100, 200, 300])
Out[15]:
In [16]:
pd.Series({2:'a', 1:'b', 3:'c'})
Out[16]:
In [17]:
pd.Series({2:'a', 1:'b', 3:'c'}, index=[3, 2])
Out[17]:
El objeto DataFrame
de Pandas¶
DataFrame
es una generalización de NumPy array¶
In [18]:
area_dict = {'California': 423967, 'Texas': 695662, 'New York': 141297,
'Florida': 170312, 'Illinois': 149995}
area = pd.Series(area_dict)
area
Out[18]:
In [19]:
states = pd.DataFrame({'population': population,
'area': area})
states
Out[19]:
In [20]:
states.index
Out[20]:
In [21]:
states.columns
Out[21]:
DataFrame
como un diccionario especializado¶
In [22]:
states['area']
Out[22]:
Construcción de objetos DataFrame
¶
In [23]:
pd.DataFrame(population, columns=['population'])
Out[23]:
In [24]:
data = [{'a': i, 'b': 2 * i}
for i in range(3)]
pd.DataFrame(data)
Out[24]:
In [25]:
pd.DataFrame([{'a': 1, 'b': 2}, {'b': 3, 'c': 4}])
Out[25]:
In [26]:
pd.DataFrame({'population': population,
'area': area})
Out[26]:
In [27]:
pd.DataFrame(np.random.rand(3, 2),
columns=['foo', 'bar'],
index=['a', 'b', 'c'])
Out[27]:
In [28]:
A = np.zeros(3, dtype=[('A', 'i8'), ('B', 'f8')])
A
Out[28]:
In [29]:
pd.DataFrame(A)
Out[29]:
El objeto Index
de Pandas¶
In [30]:
ind = pd.Index([2, 3, 5, 7, 11])
ind
Out[30]:
Index
en un array immutable¶
In [31]:
ind[1]
Out[31]:
In [32]:
ind[::2]
Out[32]:
In [33]:
print(ind.size, ind.shape, ind.ndim, ind.dtype)
In [34]:
ind[1] = 0
Index
como conjunto ordenado¶
In [35]:
indA = pd.Index([1, 3, 5, 7, 9])
indB = pd.Index([2, 3, 5, 7, 11])
In [36]:
indA & indB # intersection
Out[36]:
In [37]:
indA | indB # union
Out[37]:
In [38]:
indA ^ indB # symmetric difference
Out[38]: