{-# LANGUAGE DeriveGeneric, OverloadedStrings, DataKinds #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module Numeric.Datasets.OldFaithful where
import Numeric.Datasets
import Data.Csv
import Control.Applicative
import Network.HTTP.Req ((/:), https, Scheme(..))
data OldFaithful = OldFaithful
{ waiting :: Double
, duration :: Double
} deriving Show
instance FromRecord OldFaithful where
parseRecord v = OldFaithful <$> v .! 2 <*> v.! 1
oldFaithful :: Dataset 'Https OldFaithful
oldFaithful
= let src = URL $ https "raw.githubusercontent.com" /: "vincentarelbundock" /: "Rdatasets" /: "master" /: "csv" /: "datasets" /: "faithful.csv"
in Dataset src Nothing Nothing $ CSVRecord HasHeader defaultDecodeOptions