Pandas.DataFrameの備忘録

概要と動機

個別に書いていくと散らかっていくのでは?と思い、
Pandas.DataFrameについて、追記しながら備忘録を作っていきます。

DataFrameの呼出

import pandas as pd
pd.DataFrame

or

import pandas.DataFrame as df

or

from pandas import DataFrame

DataFrameの作成

df = pd.DataFrame([[1,2,3,4,5,6,7,8,9],
                   [11,22,33,44,55,66,77,88,99],
                   [111,222,333,444,555,666,777,888,999],
                   [1111,2222,3333,4444,5555,6666,7777,8888,9999]],
                  index=['row_0', 'row_1', 'row_2', 'row_3'],
                  columns=['column_0', 'column_1', 'column_2', 'column_3', 'column_4', 'column_5', 'column_6', 'column_7', 'column_8'])

indexは行のインデックス
columnsは列のインデックス

DataFrameのixによる参照

☆ある行を参照したい場合

df.ix["row_2",:]

結果

column_0    11
column_1    22
column_2    33
column_3    44
column_4    55
column_5    66
column_6    77
column_7    88
column_8    99
Name: row_2, dtype: int64


☆ある行を参照したい場合(複数行)

df.ix[["row_1","row_3"],:]

結果

       column_0  column_1  column_2    ...     column_6  column_7  column_8
row_1        11        22        33    ...           77        88        99
row_3      1111      2222      3333    ...         7777      8888      9999
[2 rows x 9 columns]


☆ある行~ある行を参照したい場合(複数行)

df.ix["row_1":"row_3", :]

結果

       column_0  column_1  column_2    ...     column_6  column_7  column_8
row_1        11        22        33    ...           77        88        99
row_2       111       222       333    ...          777       888       999
row_3      1111      2222      3333    ...         7777      8888      9999
[3 rows x 9 columns]


☆ある列~ある列を参照したい場合(複数行)
列に関しても、行と同様に記述できる。

df.ix[:,'column_2':'column_5']

結果

       column_2  column_3  column_4  column_5
row_0         3         4         5         6
row_1        33        44        55        66
row_2       333       444       555       666
row_3      3333      4444      5555      6666
row_4     33333     44444     55555     66666


☆ある行とある列の組み合わせで参照したい場合(複数行)
行に関する記述と、列に関する記述を組み合わせて、必要な行と列を取り出すことが出来る。

df.ix[["row_1","row_3"],'column_2':'column_6']

結果

       column_2  column_3  column_4  column_5  column_6
row_1        33        44        55        66        77
row_3      3333      4444      5555      6666      7777