Pythonを使っていて忘れがちな、リスト、Numpy配列、Series、DataFrameの間の変換方法についてまとめます。
リスト、Numpy配列、Series、DataFrame間のデータ変換
とりあえず、こちらの図を見ればすぐに思い出せると思います。

【ラベル(index)を指定する場合】

【カラム(columns)も指定する場合】

言わずもがなですが、リストやNumpy配列のデータはラベルを好きにいじることができません(一番左なら0、その次は1、のように完全追番制)。
Seriesならラベルをいじれます。
DataFrameならラベルとカラムの両方をいじることができます。
実際にPythonコードを書いてみる(ドラクエのデータを例に)
以下、ドラクエのデータを例に説明します。
戦士、勇者、僧侶、魔法使いのHP(ヒットポイント)を並べたリスト”HP”を作成します。
1)リスト⇔Numpy配列
リスト→Numpy配列
array([120, 110, 75, 50])
Numpy配列→リスト
[120, 110, 75, 50]
2)リスト、Numpy配列⇔Series
リスト→Series
0 120
1 110
2 75
3 50
dtype: int64
次のようにすれば、indexを指定できます。
戦士 120
勇者 110
僧侶 75
魔法使い 50
dtype: int64
Numpy配列→Series
リストをSeriesに変換する方法と同じです。
0 120
1 110
2 75
3 50
dtype: int64
戦士 120
勇者 110
僧侶 75
魔法使い 50
dtype: int64
Series→Numpy配列
[120, 110, 75, 50]
Series→Numpy配列
array([120, 110, 75, 50])
Series⇔DataFrame
Series→DataFrame

以下のように書くと、カラムを指定できます。

DataFrame→Series
戦士 120
勇者 110
僧侶 75
魔法使い 50
Name: HP, dtype: int32
この書き方でもOKです。
Series、DataFrameからラベル(index)の情報を取り出す方法

実際にコードを書いて確認します。
Index([‘戦士’, ‘勇者’, ‘僧侶’, ‘魔法使い’], dtype=’object’)
[‘戦士’, ‘勇者’, ‘僧侶’, ‘魔法使い’]
DataFrameからカラム(columns)の情報を取り出す方法

実際にコードを書いて確認します。
Index([‘HP’], dtype=’object’)
[‘HP’]
DataFrameにカラムを追加、削除する方法

MPというカラムを追加してみたいと思います。MPは魔法を使うためのマジックポイントです。

カラムを削除する場合は以下の通りです。

こちらでもOK。
リストやNumpy配列とDataFrameの変換
こちらの図の通りです。
もし横方向に並べたいのなら・・・
リストやNumpy配列を2次元にすることで、データを横方向に並べることができます。
つまり、角カッコ[ ]で括ります。

横方向に並べる方法については、こちらの記事に詳しくまとめましたのでご参照ください。
