2017-11-08 7 views
0

Cartoにプロットしたいバス停のデータセットがあります。データセットにはバス停留所の属性の列が含まれています。バス停にルートマップがあるか歩行者に優しいかにかかわらず、これらの属性に基づいて評価する新しい列「評価」を作成します。Cartoの属性とマッピングに基づいてバスを停止する

まず、このSQLコードを使用してratingという新しい列を作成しました。

alter table metro_bus_stops 
add rating int NOT NULL DEFAULT(0) 

そして、私は自転車ラック有するバス停(属性= bstp_has_bkrs)

update metro_bus_stops 
SET rating = rating + 3 
WHERE bstp_has_bkrs = 'Y' 

私はそれがにポイントを加算または減算なる合計27個の属性を持つための3ポイントを追加するために、次のコードを使用しました評価。私は最終的にCartoのこれらの評価点に基づいてバス停留所を地図にしたいと思います。個々の属性ごとに個別に計算を追加するのではなく、これを使用するより良い方法がありますか? if else文を使用した数式でPythonでこれをよりうまく実行できるかどうかは疑問です。

Thisは、私が役に立ったら使用しているバス停のデータです。

フィードバックをいただければ幸いです!

答えて

1

SQLステートメントには、ANDやORなどの論理演算子を組み合わせて、任意の数の列を組み合わせることができます。これは、次のような簡単な方法です。

update metro_bus_stops 
SET rating = rating + 3 
WHERE bstp_has_bkrs = 'Y' 
    OR attribute2 = value2 AND 
    AND attribute3 > value3 
    OR ... 
関連する問題