データ分析用ライブラリpandasはPythonでデータ分析を行う際に一般的に用いられるライブラリ。pandasではエクセルのような行と列からなる表構造をしたデータフレームオブジェクトを操作しデータ分析を行う。データフレームに行・列を追加する方法、データフレームから行・列を削除する方法を説明する。
ライブラリpandasを使うにはインポートが必要。通常次のようにpdと略されてインポートされる。
import pandas as pd
1. データフレームへ行を追加
次のデータフレームに行を追加する場合。
import pandas as pd data = [[25, 165, 65], [45, 178, 80], [32, 183, 72]] name = ['Jane', 'Bob', 'Mike'] property = ['age', 'toll', 'weight'] df = pd.DataFrame(data=data, columns=property, index=name) print(df)
実行結果
age height weight Jane 25 165 65 Bob 45 178 80 Mike 32 183 72
pandas.DataFrame.locでインデックス名とデータを与えることで行が追加される。
df.loc['Anna'] = [38, 155, 49] print(df)
実行結果
age height weight Jane 25 165 65 Bob 45 178 80 Mike 32 183 72 Anna 38 155 49
2. データフレームへ列を追加
次のデータフレームに列を追加する場合。
import pandas as pd data = [[25, 165, 65], [45, 178, 80], [32, 183, 72]] name = ['Jane', 'Bob', 'Mike'] property = ['age', 'toll', 'weight'] df = pd.DataFrame(data=data, columns=property, index=name) print(df)
実行結果
age height weight Jane 25 165 65 Bob 45 178 80 Mike 32 183 72
データフレームに新しいcolumn名を指定し、データを与えることで列が追加される。
df['blood-type'] = ['A', 'O', 'B'] print(df)
実行結果
age height weight blood-type Jane 25 165 65 A Bob 45 178 80 O Mike 32 183 72 B
3. データフレームから行を削除
次のデータフレームから行を削除する場合。
import pandas as pd data = [[25, 165, 65], [45, 178, 80], [32, 183, 72]] name = ['Jane', 'Bob', 'Mike'] property = ['age', 'toll', 'weight'] df = pd.DataFrame(data=data, columns=property, index=name) print(df)
実行結果
age height weight Jane 25 165 65 Bob 45 178 80 Mike 32 183 72
pandas.DataFrame.dropでIndex名を指定することで行が削除される。axis=0は行・列の内、行を指定しているがデフォルトがaxis=0なので省略可能。pandas.DataFrame.dropは非破壊なので削除した結果を保持する場合は別のデータフレームに代入する。
データフレームdfからindex'Mike'を削除した新しいデータフレームdf_dropを作成する場合。
df_drop = df.drop('Mike', axis=0) print(df_drop)
実行結果
age height weight blood-type Jane 25 165 65 A Bob 45 178 80 O
4. データフレームから列を削除
次のデータフレームから列を削除する場合。
import pandas as pd data = [[25, 165, 65], [45, 178, 80], [32, 183, 72]] name = ['Jane', 'Bob', 'Mike'] property = ['age', 'toll', 'weight'] df = pd.DataFrame(data=data, columns=property, index=name) print(df)
実行結果
age height weight Jane 25 165 65 Bob 45 178 80 Mike 32 183 72
行の削除同様pandas.DataFrame.dropを用いる。columnを指定し、axis=1とすることで列の削除が可能。pandas.DataFrame.dropは非破壊なので削除した結果を保持する場合は別のデータフレームに代入する。
データフレームdfからcolumn'weight'を削除した新しいデータフレームdf_dropを作成する場合。
df_drop = df.drop('weight', axis=1) print(df_drop)
実行結果
age height Jane 25 165 Bob 45 178 Mike 32 183
0 件のコメント:
コメントを投稿