データフレームしたい(pandas.DataFrame)
1import pandas as pd
2
3# values: list[dict]
4data = pd.DataFrame(
5 [
6 {"name": "Alice", "age": 30},
7 {"name": "Bob", "age": 25},
8 ]
9)
10
11# values: dict[str, list]
12data = pd.DataFrame(
13 {
14 "name": ["Alice", "Bob"],
15 "age": [30, 25]
16 }
17)
18
19data.display()
20# name age
21# 0 Alice 30
22# 1 Bob 25
pd.DataFrameでデータフレームを作成できます。
pandasの中核となる、行(インデックス)と列(カラム)で構成される表形式のデータ構造で、データの操作や分析に便利です。
リスト型(list[dict])や辞書型(dict[str, list])など、さまざまな形式のデータからデータフレームを作成できます。
ヒント
基本的には、スプレッドシートのような表形式の構造を頭に思い浮かべればOKです。 それに対してまず 「行に対して操作」したいのか、 「列に対して操作」したいのか、 を考えると、 やりたいことが整理され、 目的の結果が得られるはずです。
2次元配列したい(pandas.DataFrame)
1values: list[list] = [
2 ["name", "age"],
3 ["Alice", 30],
4 ["Bob", 25]
5]
6
7data = pd.DataFrame(values)
2次元配列(list[list])からデータフレームを作成できます。
最初の行はカラム名として扱われます。
1import numpy as np
2
3values: np.ndarray = np.array([
4 ["Alice", 30],
5 ["Bob", 25],
6])
7
8data = pd.DataFrame(
9 values,
10 columns=["name", "age"],
11)
2次元配列にはnumpy.ndarrayを使う方が便利です。
データにカラム名が含まれていない場合は、columnsオプションで列の名前を指定してください。
空のデータフレームしたい(pandas.DataFrame)
1data = pd.DataFrame()
2data = pd.DataFrame(columns=[])
3data = pd.DataFrame(index=[], columns=[])
4
5print(data.empty) # True
pd.DataFrame()で空のデータフレームを作成できます。
columnsオプションで列の名前を指定したり、indexオプションで行のインデックスを指定したりできます。
empty属性で、データフレームが空かどうかを確認できます。
カラムの値を取得したい(pandas.DataFrame)
1# "カラム名"の値を取得
2data["カラム名"]
3
4# "カラム名"の値を行方向にスライス
5data["カラム名"][開始:終了]
[]アクセサで、カラムの値を取得できます。
取得した値はpandas.Seriesオブジェクトになっていて、
さらに[開始:終了]で行方向にスライスできます。