- 辞書について
- 辞書とデータフレームを使用した、データ整理方法
- まとめ

今回、コードはGoogle Colabを使用して書いています。
他のIDE(VS codeなど)を使用した場合、
うまく実行できるか分かりませんので、Google Colabを使用してコードを書いてみてください。


辞書とは?


辞書の特徴について
辞書(ディクショナリー)とは、コレクションの一つで『キー』と『値』を使って情報を管理するものです。



『キー』と『値』について詳しく見ていきましょう。
辞書は、友達の名前と電話番号のように、2つのものがペアになっているイメージです。
例えば、友達の名前が『キー』で、その電話番号が『値』になります。
# 辞書の作成
my_friends = {"ケンジ": "123-456-789", "アカネ": "987-654-321"}
print(my_friends)
# キーを使って値にアクセス
print("ケンジ : ",my_friends["ケンジ"])
print("アカネ : ",my_friends["アカネ"])
{‘ケンジ’: ‘123-456-789’, ‘アカネ’: ‘987-654-321’}
ケンジ : 123-456-789
アカネ : 987-654-321
解説
- my_friends = {“ケンジ”: “123-456-789”, “アカネ”: “987-654-321”}
-
この行では
my_friends
という変数に辞書を割り当てています。
辞書は波括弧{}
で囲まれ、キーと値のペアがコロン:
で区切られています。"ケンジ"
と"アカネ"
が『キー』で、それぞれの電話番号が『値』です。 - print(my_friends)
-
この行では
print
関数を使ってmy_friends
辞書の内容をコンソールに出力しています。
出力結果は辞書が作成されたとおり、キーと値のペアが表示されます。 - print(“ケンジ : “,my_friends[“ケンジ”])
print(“アカネ : “,my_friends[“アカネ”]) -
print
関数内で、辞書my_friends
からキー"ケンジ"
に対応する値にアクセスしています。
辞書から値にアクセスするには、辞書名の後にキーを角括弧[]
で囲んで指定します。"アカネ"
の場合も、同様です。
キーと値の対応を、:(コロン)を使用して指定する
辞書 = {キー1: 値1 , キー2: 値2, キー3: 値3, ・・・}
キーには、文字列の他に数値形など、さまざまなデータを指定できる
print("指定したキー名" : 辞書[])
辞書の要素を追加と変更する方法



Pythonの辞書では、情報の追加と変更がとても簡単にできるんですよ。
辞書に新しい要素を追加するには、新しく『キー』と『値』を指定していきます。
例えば、『友達』と『電話番号』を新しく追加する場合を考えてみましょう。
# 辞書の作成
my_friends = {"ケンジ": "123-456-789", "アカネ": "987-654-321"}
# 辞書に新しい要素を追加
my_friends["ツヨシ"] = "987-654-321"
print(my_friends)
{‘ケンジ’: ‘123-456-789’, ‘アカネ’: ‘987-654-321’, ‘ツヨシ’: ‘987-654-321’}
辞書[新しいキー] = 新しい値
辞書の既存の要素を変更したい場合は、変更したい『キー』を指定し、変更する『値』を入力していきます。
例えば、ケンジの電話番号が変わった場合を考えていきましょう。
# 要素の値を変更
my_friends["ケンジ"] = "111-222-333"
print(my_friends)
{‘ケンジ’: ‘111-222-333’, ‘アカネ’: ‘987-654-321’, ‘ツヨシ’: ‘987-654-321’}
辞書[変更したい要素のキー] = 変更後の値
辞書の要素を削除する方法



辞書の要素は、削除することもできますよ。
例えば、実生活でも連絡先リストから誰かを削除したい、あるいは情報を更新したい時がありますよね?
Pythonでは、del
キーワードを使うことで簡単に要素を削除できます。
“ケンジ”という名前をリストから削除してみましょう。
my_friends = {"ケンジ": "123-456-789", "アカネ": "987-654-321"}
del my_friends["ケンジ"]
print(my_friends)
{‘アカネ’: ‘987-654-321’}
del 辞書[削除したい要素のキー]
辞書内にキーが存在するかどうか確認する方法



辞書内に特定のキーが存在するかどうかを確認する方法を学びましょう。
例えば、漫画のキャラクターのステータスを辞書で管理している場合を考えてみましょう。
特定のキャラクターに対するデータがあるか確認したい場合に役立ちます。
comic_characters = {"ルフィ": "海賊", "孫悟空": "サイヤ人","ゴン":"ハンター"}
print("ルフィ" in comic_characters)
print("孫悟空" in comic_characters)
print("ゴン" in comic_characters)
print("ナルト" in comic_characters)
True
True
True
False
解説
- comic_characters = {“ルフィ”: “海賊”, “孫悟空”: “サイヤ人”,”ゴン”:”ハンター”}
-
この行では
comic_characters
という名前の辞書を作成しています。
辞書はキーと値のペアで情報を格納します。
ここでのキーは漫画のキャラクターの名前(”ルフィ”、”孫悟空”、”ゴン”)で、それぞれの値はキャラクターの職業や役割(”海賊”、”サイヤ人”、”ハンター”)です。
辞書は{}
で囲まれ、各ペアはコロン:
で区切られます - print(“ルフィ” in comic_characters)
print(“孫悟空” in comic_characters)
print(“ゴン” in comic_characters)
print(“ナルト” in comic_characters) -
print("ルフィ" in comic_characters)
は"ルフィ"
というキーがcomic_characters
辞書の中に存在するかどうかを確認します。in
キーワードを使用し、キーが辞書に含まれている場合にTrue
を返し、そうでない場合はFalse
を返します。
“ルフィ”、”孫悟空”、”ゴン”はcomic_characters
辞書の中に存在するので,True
を返し、ナルトは存在しないので、False
を返します。



将来的に膨大なデータを操作する際に、事前に存在チェックを行うことで、プログラムの安定性と信頼性を高めることができます。
キーが辞書に含まれている場合には、True
print(存在を確認したいキー in 辞書 )
キーが辞書に含まれてない場合には、False
辞書をコピーする方法と注意点



元の辞書をコピーします。
そして、元の辞書の中身は変えずに、コピーした辞書の中身だけを変更する場合を考えます。
#copy モジュールの copy() 関数を使用
import copy
# 元の辞書
original_dict = {
"fruits": {"apple": 100, "banana": 150},
"vegetables": ["carrot", "tomato"]
}
# 深いコピーを作る
deep_copied_dict = copy.deepcopy(original_dict)
# 深いコピーされた辞書を変更
deep_copied_dict["fruits"]["banana"] = 100
# 深いコピーされた辞書のリストを変更
deep_copied_dict["vegetables"].append("cucumber")
# 変更後の辞書の状態を確認する
print("元の辞書:", original_dict)
print("深いコピーの辞書:", deep_copied_dict)
元の辞書: {'fruits': {'apple': 100, 'banana': 150}, 'vegetables': ['carrot', 'tomato']}
深いコピーの辞書: {'fruits': {'apple': 100, 'banana': 100}, 'vegetables': ['carrot', 'tomato', 'cucumber']}


辞書とデータフレームを組み合わせたデータの整理方法





今度は、データフレームを使用してデータを扱ってみましょう。
データフレームは行と列がある表形式のデータ構造です。
例えば、国、人口、大陸の情報を持つデータフレームを作成し、表示してみましょう。
import pandas as pd
# データフレームの作成
df = pd.DataFrame({
"国": ["日本", "アメリカ", "中国"],
"人口": [126300000, 331000000, 1439323776],
"大陸": ["アジア", "北アメリカ", "アジア"]
})
# データの表示
print(df)
国 人口 大陸
0 日本 126300000 アジア
1 アメリカ 331000000 北アメリカ
2 中国 1439323776 アジア
- import pandas as pd
-
この行では、Pandasライブラリを
pd
という短い名前でインポートしています。
Pandasは、データ分析を行う際に非常に便利なツールです。pd
という短縮形を使うことで、コードの中でPandasを使うたびにpandas
と書かなくても済みます。 - df = pd.DataFrame({})
-
ここで
pd.DataFrame({...})
を使って、データフレームdf
を作成しています。
データフレームは表形式のデータを扱うためのPandasの中心的なデータ構造です。
中括弧{}
の中にデータを辞書形式で記述します。
{}内に国、人口、大陸の名前をリスト形式で割り当てています。 - print(df)
-
最後の行では、
print(df)
を使ってデータフレームdf
の内容を表示しています。
この結果、上で作成した表形式のデータが出力されます。
列名は"国"
、"人口"
、"大陸"
で、各行にはこれらの列に対応するデータが含まれています。


まとめ
今回は、pythonのコレクションの一つである辞書についての説明をしていきました。
基礎構文の積み重ねがpythonをマスターする早道ですので頑張っていきましょう。
この記事が、皆様のお役に少しでも立てたら幸いです。
コメント