Pandas学習ノート3——DataFrameからデータを選択


DataFrameデータ選択方法
DataFrameは、2次元化または構造化された配列のようなものもあれば、インデックスを共有するいくつかのSeriesオブジェクトからなる辞書のようなものもあります.したがって、DataFrameのデータを選択するには、上の2つの角度から出発することができます.
DataFrameを辞書と見なす
import numpy as np
import pandas as pd
#    DataFrame  
area = pd.Series({'California': 423967, 'Texas': 695662,
                   'New York': 141297, 'Florida': 170312,
                   'Illinois': 149995})
pop = pd.Series({'California': 38332521, 'Texas': 26448193,
                  'New York': 19651127, 'Florida': 19552860,
                  'Illinois': 12882135})
data = pd.DataFrame({'area':area, 'pop':pop})

# data     ,       ,       Series  、
#    Series    DataFrame   ,                   
data['area']

#    :
California    423967
Texas         695662
New York      141297
Florida       170312
Illinois      149995
Name: area, dtype: int64
#            DataFrame   ,  data             
data.area

#    :
California    423967
Texas         695662
New York      141297
Florida       170312
Illinois      149995
Name: area, dtype: int64

DataFrameオブジェクトを2 D配列と見なす
# data       values  
data.values

#    :
array([[  423967, 38332521],
       [  695662, 26448193],
       [  141297, 19651127],
       [  170312, 19552860],
       [  149995, 12882135]])
#         ,      DataFrame   ,       value   ,   numpy       (    、    、bool  、       
#      DataFrame   ,    pd.loc pd.iloc
#pd.loc     ,         
data.loc['California':'Florida',:'pop']

#    :
              area       pop
California  423967  38332521
Texas       695662  26448193
New York    141297  19651127
Florida     170312  19552860

#      index       ,   data    ,                
data['California':'Florida']

#    
              area       pop
California  423967  38332521
Texas       695662  26448193
New York    141297  19651127
Florida     170312  19552860

#      ,   data          DataFrame      
data['pop']

#    
California    38332521
Texas         26448193
New York      19651127
Florida       19552860
Illinois      12882135
Name: pop, dtype: int64
#         ?         numpy             DataFrame   ,       :         ,      DataFrame      
data.iloc[:3,:2]

#    :
              area       pop
California  423967  38332521
Texas       695662  26448193
New York    141297  19651127