始める無料で始める

複数のスプレッドシートを扱う

人間が読むことを主目的にしたワークブックでは、1つのテーマに関するデータが複数のシートに分かれていることがあります。たとえば、ある企業が事業を展開した各地域や各年ごとに、取引のシートが分かれているファイルなどです。

FreeCodeCamp の New Developer Survey のファイルも同様で、異なる年の回答サンプルが別々のシートに入っています。ここでは、それらを1つのデータフレームにまとめて分析できるようにしましょう。

pandaspd としてインポート済みです。すべてのシートは順序付き辞書 responses に読み込まれており、シート名がキー、データフレームが値になっています。そのため、values() メソッドでデータフレームにアクセスできます。

この演習はコースの一部です

pandasで効率よくデータを取り込む

コースを見る

演習の手順

  • 空のデータフレーム all_responses を作成します。
  • responses 辞書の値を反復処理する for ループを用意します。
  • 各データフレームを all_responses に連結し、結果を同じ変数名に再代入します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create an empty dataframe
all_responses = ____

# Set up for loop to iterate through values in responses
for df in ____:
  # Print the number of rows being added
  print("Adding {} rows".format(df.shape[0]))
  # Concatenate all_responses and df, assign result
  all_responses = pd.concat(____)

# Graph employment statuses in sample
counts = all_responses.groupby("EmploymentStatus").EmploymentStatus.count()
counts.plot.barh()
plt.show()
コードを編集して実行