google-site-verification=EmVnnySXehAfTr_j8ZJN48hwvxJtfNf80pkPX1ObQlA Fast Track News: GSP246

GSP246

## Run in cloudshell

```cmd

bq query --nouse_legacy_sql '

#standardSQL

SELECT

  TIMESTAMP_TRUNC(pickup_datetime,

    MONTH) month,

  COUNT(*) trips

FROM

  `bigquery-public-data.new_york.tlc_yellow_trips_2015`

GROUP BY

  1

ORDER BY

  1'

bq query --nouse_legacy_sql '

#standardSQL

SELECT

  EXTRACT(HOUR

  FROM

    pickup_datetime) hour,

  ROUND(AVG(trip_distance / TIMESTAMP_DIFF(dropoff_datetime,

        pickup_datetime,

        SECOND))*3600, 1) speed

FROM

  `bigquery-public-data.new_york.tlc_yellow_trips_2015`

WHERE

  trip_distance > 0

  AND fare_amount/trip_distance BETWEEN 2

  AND 10

  AND dropoff_datetime > pickup_datetime

GROUP BY

  1

ORDER BY

  1'

bq query --nouse_legacy_sql '

#standardSQL

WITH params AS (

    SELECT

    1 AS TRAIN,

    2 AS EVAL

    ),

  daynames AS

    (SELECT ["Sun", "Mon", "Tues", "Wed", "Thurs", "Fri", "Sat"] AS daysofweek),

  taxitrips AS (

  SELECT

    (tolls_amount + fare_amount) AS total_fare,

    daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,

    EXTRACT(HOUR FROM pickup_datetime) AS hourofday,

    pickup_longitude AS pickuplon,

    pickup_latitude AS pickuplat,

    dropoff_longitude AS dropofflon,

    dropoff_latitude AS dropofflat,

    passenger_count AS passengers

  FROM

    `nyc-tlc.yellow.trips`, daynames, params

  WHERE

    trip_distance > 0 AND fare_amount > 0

    AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.TRAIN

  )

  SELECT *

  FROM taxitrips'

bq mk taxi

bq query --nouse_legacy_sql '

CREATE or REPLACE MODEL taxi.taxifare_model

OPTIONS

  (model_type="linear_reg", labels=["total_fare"]) AS

WITH params AS (

    SELECT

    1 AS TRAIN,

    2 AS EVAL

    ),

  daynames AS

    (SELECT ["Sun", "Mon", "Tues", "Wed", "Thurs", "Fri", "Sat"] AS daysofweek),

  taxitrips AS (

  SELECT

    (tolls_amount + fare_amount) AS total_fare,

    daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,

    EXTRACT(HOUR FROM pickup_datetime) AS hourofday,

    pickup_longitude AS pickuplon,

    pickup_latitude AS pickuplat,

    dropoff_longitude AS dropofflon,

    dropoff_latitude AS dropofflat,

    passenger_count AS passengers

  FROM

    `nyc-tlc.yellow.trips`, daynames, params

  WHERE

    trip_distance > 0 AND fare_amount > 0

    AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.TRAIN

  )

  SELECT *

  FROM taxitrips'

bq query --nouse_legacy_sql '

#standardSQL

SELECT

  SQRT(mean_squared_error) AS rmse

FROM

  ML.EVALUATE(MODEL taxi.taxifare_model,

  (

  WITH params AS (

    SELECT

    1 AS TRAIN,

    2 AS EVAL

    ),

  daynames AS

    (SELECT ["Sun", "Mon", "Tues", "Wed", "Thurs", "Fri", "Sat"] AS daysofweek),

  taxitrips AS (

  SELECT

    (tolls_amount + fare_amount) AS total_fare,

    daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,

    EXTRACT(HOUR FROM pickup_datetime) AS hourofday,

    pickup_longitude AS pickuplon,

    pickup_latitude AS pickuplat,

    dropoff_longitude AS dropofflon,

    dropoff_latitude AS dropofflat,

    passenger_count AS passengers

  FROM

    `nyc-tlc.yellow.trips`, daynames, params

  WHERE

    trip_distance > 0 AND fare_amount > 0

    AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.EVAL

  )

  SELECT *

  FROM taxitrips

  ))'

bq query --nouse_legacy_sql '

#standardSQL

SELECT

*

FROM

  ml.PREDICT(MODEL `taxi.taxifare_model`,

   (

 WITH params AS (

    SELECT

    1 AS TRAIN,

    2 AS EVAL

    ),

  daynames AS

    (SELECT ["Sun", "Mon", "Tues", "Wed", "Thurs", "Fri", "Sat"] AS daysofweek),

  taxitrips AS (

  SELECT

    (tolls_amount + fare_amount) AS total_fare,

    daysofweek[ORDINAL(EXTRACT(DAYOFWEEK FROM pickup_datetime))] AS dayofweek,

    EXTRACT(HOUR FROM pickup_datetime) AS hourofday,

    pickup_longitude AS pickuplon,

    pickup_latitude AS pickuplat,

    dropoff_longitude AS dropofflon,

    dropoff_latitude AS dropofflat,

    passenger_count AS passengers

  FROM

    `nyc-tlc.yellow.trips`, daynames, params

  WHERE

    trip_distance > 0 AND fare_amount > 0

    AND MOD(ABS(FARM_FINGERPRINT(CAST(pickup_datetime AS STRING))),1000) = params.EVAL

  )

  SELECT *

  FROM taxitrips

));'

```

No comments:

Post a Comment

April Week 2 || Lab 2 || Troubleshooting Data Models in Looker

  CREATE NEW FILE NAME: user_order_lifetime view: user_order_lifetime { derived_table: { sql: SELECT order_items.user_id as us...