【親子でPythonを学ぶ!】データを整理するための辞書の使い方

pythonを使用している人を表す
  • URLをコピーしました!

こんにちは!タスカです。

今回は、Pythonの辞書とデータフレームを組み合わせ、データを整理する方法を解説していきます。

辞書とデータフレームをマスターすれば、あなたはどんなデータも自在に操り、より分かりやすい情報に変えることができるでしょう。

今回の記事の内容
  • 辞書について
  • 辞書とデータフレームを使用した、データ整理方法
  • まとめ
タスカ

今回、コードは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を返します。

将来的に膨大なデータを操作する際に、事前に存在チェックを行うことで、プログラムの安定性と信頼性を高めることができます。

辞書内にキーが存在するかどうか確認する方法

print(存在を確認したいキー in 辞書 )

キーが辞書に含まれている場合には、True
キーが辞書に含まれてない場合には、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をマスターする早道ですので頑張っていきましょう。

この記事が、皆様のお役に少しでも立てたら幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

目次