ここで学習すること
Pandasのデータ構造の一つであるSeries型について学習します。
Series型の確認方法や編集方法を学習します。
Pandasのデータ構造のうち、Seriesは1次元の行列です。
pd.Series(辞書型のリスト)でSeries型の行列を作成できます。
import pandas as pd
辞書型のリスト{“hyogo”: 3, “osaka”: 2}をprefに代入
pref = {“hyogo”: 3, “osaka”: 2}
pd.SeriesでSeries型の行列を作成。
print(pd.Series(pref))
=>
hyougo 3 osaka 2 dtype: int64
Seriesのデータの確認方法
インデックスを指定する場合
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se=pd.Series(pref)
[0:2]でインデックスを指定し要素を抜き出します。
print(se[0:2])
=>
hyogo 3
osaka 2
dtype: int64
インデックス値を指定する場合
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se=pd.Series(pref)
[0:2]でインデックス値を指定し要素を抜き出します。複数の要素を取り出す場合二重[ ]で囲う必要があります。
print(se[“osaka”, “hyogo”])
=>
osaka 2
hyogo 3
dtype: int64
Seriesのインデックス、データの取り出し
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se=pd.Series(pref)
se.valuesでデータを取り出せます。
print(se.values)
=>
[3 2 4 8]
series.indexでindexを取り出せます。
print(series.index)
=>
Index([‘hyogo’, ‘osaka’, ‘kyoto’, ‘tokyo’], dtype=’object’)
Seriesのデータを追加する
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se = pd.Series(pref)
shikoku = {“kochi”: 8}
.append()で要素を追加できます。
se2= se.append(pd.Series(shikoku))
print(se2)
=>
hyogo 3
osaka 2
kyoto 4
tokyo 8
kochi 8
dtype: int64
要素を削除する
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se = pd.Series(pref)
se.drop()で要素を削除できる
se2 = se.drop(“hyogo”)
print(se2)
=>
osaka 2
kyoto 4
tokyo 8
dtype: int64
Seriesのデータにフィルタリングする
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se = pd.Series(pref)
print(se)
=>
hyogo 3
osaka 2
kyoto 4
tokyo 8
dtype: int64
Series型の変数seの場合se[se >= 5]で値が5以上の要素を取得します。
print(se[se >= 5])
=>
tokyo 8
dtype: int64
例
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se = pd.Series(pref)
se[ ][ ]で[ ] and [ ]を意味します。
se2 = se[se >= 3][ se < 4]
print(se2)
hyogo 3
dtype: int64
Seriesのデータにソートをかける
import pandas as pd
pref = {“hyogo”: 3, “osaka”: 2, “kyoto”:4, “tokyo”:8}
se = pd.Series(pref)
print(se)
=>
hyogo 3
osaka 2
kyoto 4
tokyo 8
dtype: int64
インデックの昇順のソートはse.sort_index()です。
sort1 = se.sort_index()
print(sort1)
=>
hyogo 3
kyoto 4
osaka 2
tokyo 8
dtype: int64
インデックの降順のソートはse.sort_index()です。
sort2 = se.sort_index(ascending=False)
print(sort2)
=>
tokyo 8
osaka 2
kyoto 4
hyogo 3
dtype: int64
データの昇順のソートはse.sort_value()です。
sort3 = se.sort_value(ascending=False)
print(sort3)
=>
tokyo 8
kyoto 4
hyogo 3
osaka 2
dtype: int64