# -*- coding: utf-8 -*-
import pandas as pd

# データ（辞書型）
data = {
    '名前' : ['西住みほ', '秋山優花里', '武部沙織'],
    '身長' : [158, 157, 157]}

# インデックスラベル
index_data = ['車長', '装填手', '通信手']

# データフレームの初期化
df = pd.DataFrame(data, index = index_data)
print(df)
"""
        名前   身長
車長    西住みほ  158
装填手  秋山優花里  157
通信手   武部沙織  157
"""


# インデックスの参照
print(df.index) # Index([車長, 装填手, 通信手], dtype=object)


# ラベルの参照
print(df.columns) # Index([名前, 身長], dtype=object) 


# データ型の参照
print(df.dtypes)
"""
名前 object
役割 object
身長 int64
dtype: object 
"""


# ラベル「身長」データの基本統計量
print(df['身長'].describe())
"""
count 3.000000
mean 157.333333
std 0.577350
min 157.000000
25% 157.000000
50% 157.000000
75% 157.500000
max 158.000000 
"""


# 値の取得
print(df.values)
"""
[[西住みほ' 158L]
 ['秋山優花里' 157L]
 ['武部沙織' 157L]]
"""


# ラベル「名前」の値を参照
print(df['名前'].values) # ['西住みほ' '秋山優花里' '武部沙織']
"""
['西住みほ' '秋山優花里' '武部沙織']
"""


# ラベル・インデックスを指定して値を参照
print(df.loc[['車長', '装填手'], ['名前', '身長']])
"""
        名前   身長
車長    西住みほ  158
装填手  秋山優花里  157
"""


# ラベル・インデックスの範囲を指定して値を参照
print(df.loc['車長':'装填手', '名前':'身長'])
"""
        名前   身長
車長    西住みほ  158
装填手  秋山優花里  157
"""


# 行列を番号で参照（0～1行目、0列）
print(df.iloc[[0, 1], [0]])
"""
        名前
車長    西住みほ
装填手  秋山優花里
"""

# ラベル（列）を参照
print(df['名前'])
"""
車長      西住みほ
装填手    秋山優花里
通信手     武部沙織
Name: 名前, dtype: object
"""