{-# OPTIONS_GHC -Wno-unrecognised-pragmas #-}
{-# HLINT ignore "Use newtype instead of data" #-}
module DataFrame.Display where
import qualified Data.Text.IO as T
import qualified DataFrame.Internal.DataFrame as D
import qualified DataFrame.Operations.Subset as D
import Data.Function
data DisplayOptions = DisplayOptions
{
DisplayOptions -> Int
displayRows :: Int
}
defaultDisplayOptions :: DisplayOptions
defaultDisplayOptions :: DisplayOptions
defaultDisplayOptions = Int -> DisplayOptions
DisplayOptions Int
10
display :: DisplayOptions -> D.DataFrame -> IO ()
display :: DisplayOptions -> DataFrame -> IO ()
display DisplayOptions
opts DataFrame
df = DataFrame
df DataFrame -> (DataFrame -> DataFrame) -> DataFrame
forall a b. a -> (a -> b) -> b
& Int -> DataFrame -> DataFrame
D.take (DisplayOptions -> Int
displayRows DisplayOptions
opts) DataFrame -> (DataFrame -> Text) -> Text
forall a b. a -> (a -> b) -> b
& (DataFrame -> Bool -> Text
`D.asText` Bool
False) Text -> (Text -> IO ()) -> IO ()
forall a b. a -> (a -> b) -> b
& Text -> IO ()
T.putStrLn