複数条件でのフィルタリング
これまで、単一の条件を満たすレコードだけを選択的にインポートしてきましたが、複数の基準でデータセットをフィルタリングすることもよくあります。この演習では、そのやり方を実践します。
weather テーブルには、ニューヨーク市の毎日の最高・最低気温と降水量が含まれています。ここでは、悪天候に注目しましょう。具体的には、積雪が 1 インチ以上、または最高気温が氷点下(華氏 32 度)以下の日です。これを行うには、OR 演算子を使って両方の列の値を確認するクエリを作成します。
pandas は pd として読み込まれており、データベースエンジン engine は作成済みです。
この演習はコースの一部です
pandasで効率よくデータを取り込む
演習の手順
weatherから、tmaxが 32 度以下ORsnowが 1 インチ以上のレコードを選択するクエリを作成します。read_sql()を使ってデータベースをクエリし、結果を変数wintry_daysに代入します。- データフレーム内のすべてのレコードが指定の条件を満たしていることを確認するために、
describe()メソッドで要約統計量を表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Create query for records with max temps <= 32 or snow >= 1
query = """
SELECT *
FROM weather
____ ____
____ ____;
"""
# Query database and assign result to wintry_days
wintry_days = pd.read_sql(____)
# View summary stats about the temperatures
print(____)