From the Book Python for Data Analysis: A Series is a one-dimensional array-like object containing an array of data and an associated array of data labels, called its index.
In [43]:
import pandas as pd
from pandas import Series, DataFrame
series_1 = Series([-2, -1, 0, 1, 2, 3, 4, 5])
series_1
Out[43]:
In [44]:
series_1.values
Out[44]:
In [45]:
series_1.index
Out[45]:
In [46]:
series_2 = Series([1, 2, 3], index=['a', 'b', 'c'])
series_2
Out[46]:
In [47]:
series_2.index
Out[47]:
In [48]:
series_2['a']
Out[48]:
In [49]:
series_2[['a', 'b']]
Out[49]:
In [50]:
series_2[series_2 > 1]
Out[50]:
In [51]:
series_2 * 2
Out[51]:
In [52]:
numbers_1 = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
series_3 = Series(numbers_1)
series_3
Out[52]:
In [53]:
numbers_2_index = ['a', 'b', 'c', 'd']
numbers_2 = {'a': 1, 'b': 2, 'c': 3}
series_4 = Series(numbers_2, index=numbers_2_index)
series_4
Out[53]:
In [54]:
pd.isnull(series_4) # same as series_4.isnull()
Out[54]:
In [55]:
pd.notnull(series_4)
Out[55]:
In [57]:
series_3 + series_4
Out[57]:
In [61]:
series_4.name = 'numbers'
series_4.index.name = 'letter'
series_4
Out[61]:
In [63]:
series_4.index = ['1', '2', '3', 'x'] # update index
series_4
Out[63]:
From the Book Python for Data Analysis: A DataFrame represents a tabular, spreadsheet-like data structure containing an ordered collection of columns, each of which can be a different value type. Can be thought as a dict of Series.
In [65]:
data_1 = {
'pet': ['Toffee', 'Candy', 'Cake', 'Sussy'],
'age': [3, 1, 2, 4],
}
frame_1 = DataFrame(data_1)
frame_1
Out[65]:
In [66]:
frame_1['age'] # dict-like notation
Out[66]:
In [67]:
frame_1.pet # attribute
Out[67]:
In [68]:
frame_2 = DataFrame(data_1, columns=['pet', 'age', 'toy'], index=['one', 'two', 'three', 'four'])
frame_2
Out[68]:
In [69]:
frame_2.ix['four'] # row
Out[69]:
In [70]:
frame_2.toy = 'bone'
frame_2
Out[70]:
In [73]:
frame_2.toy = Series(['bone', None, 'bone', 'bone'], index=['one', 'two', 'three', 'four'])
frame_2
Out[73]:
In [74]:
frame_2['likes_bone_toy'] = frame_2.toy == 'bone'
frame_2
Out[74]:
In [75]:
frame_2.T # transpose
Out[75]:
In [76]:
frame_2.columns.name = 'Number'
frame_2.index.name = 'Pet'
frame_2
Out[76]:
In [77]:
frame_2.values
Out[77]:
In [78]:
frame_2.index
Out[78]:
In [79]:
'one' in frame_2.index
Out[79]:
In [83]:
frame_2.reindex(['four', 'three', 'two', 'one'], fill_value=0)
Out[83]:
In [88]:
fill_numbers = Series(['blue', 'yellow', 'green'], index=[0, 4, 8])
fill_numbers.reindex(range(12), method='ffill')
Out[88]: