総まとめ (2)
すばらしいです!これで、列の要素を順に処理し、言語名をキー、指定した言語のツイート数を値とする辞書を作る機能を定義できました。
この演習では、前の演習で作成した機能を持つ関数を定義し、関数内から結果の辞書を返し、適切な引数でその関数を呼び出します。
便宜上、pandas パッケージは pd としてインポート済みで、'tweets.csv' は tweets_df 変数に読み込まれています。
この演習はコースの一部です
Pythonの関数入門
演習の手順
- 2つのパラメータを持つ関数
count_entries()を定義します。1つ目はDataFrame用のdf、2つ目は列名用のcol_nameです。 forループ内のif-else文の本体を完成させます。キーが辞書langs_countに存在する場合は現在の値に1を加算し、存在しない場合はそのキーをlangs_countに追加して値を1に設定します。コードではループ変数entryを使ってください。count_entries()関数の中からlangs_count辞書を返します。count_entries()関数にtweets_dfと列名'lang'を渡して呼び出し、戻り値を変数resultに代入します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define count_entries()
def ____(____, ____):
"""Return a dictionary with counts of
occurrences as value for each key."""
# Initialize an empty dictionary: langs_count
langs_count = {}
# Extract column from DataFrame: col
col = df[col_name]
# Iterate over lang column in DataFrame
for entry in col:
# If the language is in langs_count, add 1
if entry in langs_count.keys():
____
# Else add the language to langs_count, set the value to 1
else:
____
# Return the langs_count dictionary
# Call count_entries(): result
# Print the result
print(result)