dataframe-0.3.3.2: A fast, safe, and intuitive DataFrame library.
Safe HaskellNone
LanguageHaskell2010

DataFrame.Internal.Expression

Documentation

data Expr a where Source #

Constructors

Col :: forall a. Columnable a => Text -> Expr a 
Lit :: forall a. Columnable a => a -> Expr a 
If :: forall a. Columnable a => Expr Bool -> Expr a -> Expr a -> Expr a 
UnaryOp :: forall a b. (Columnable a, Columnable b) => Text -> (b -> a) -> Expr b -> Expr a 
BinaryOp :: forall c b a. (Columnable c, Columnable b, Columnable a) => Text -> (c -> b -> a) -> Expr c -> Expr b -> Expr a 
AggVector :: forall (v :: Type -> Type) b a. (Vector v b, Typeable v, Columnable a, Columnable b) => Expr b -> Text -> (v b -> a) -> Expr a 
AggReduce :: forall a. Columnable a => Expr a -> Text -> (forall a1. Columnable a1 => a1 -> a1 -> a1) -> Expr a 
AggNumericVector :: forall a b. (Columnable a, Columnable b, Unbox a, Unbox b, Num a, Num b) => Expr b -> Text -> (Vector b -> a) -> Expr a 
AggFold :: forall a b. (Columnable a, Columnable b) => Expr b -> Text -> a -> (a -> b -> a) -> Expr a 

Instances

Instances details
(Floating a, Columnable a) => Floating (Expr a) Source # 
Instance details

Defined in DataFrame.Internal.Expression

Methods

pi :: Expr a #

exp :: Expr a -> Expr a #

log :: Expr a -> Expr a #

sqrt :: Expr a -> Expr a #

(**) :: Expr a -> Expr a -> Expr a #

logBase :: Expr a -> Expr a -> Expr a #

sin :: Expr a -> Expr a #

cos :: Expr a -> Expr a #

tan :: Expr a -> Expr a #

asin :: Expr a -> Expr a #

acos :: Expr a -> Expr a #

atan :: Expr a -> Expr a #

sinh :: Expr a -> Expr a #

cosh :: Expr a -> Expr a #

tanh :: Expr a -> Expr a #

asinh :: Expr a -> Expr a #

acosh :: Expr a -> Expr a #

atanh :: Expr a -> Expr a #

log1p :: Expr a -> Expr a #

expm1 :: Expr a -> Expr a #

log1pexp :: Expr a -> Expr a #

log1mexp :: Expr a -> Expr a #

(Num a, Columnable a) => Num (Expr a) Source # 
Instance details

Defined in DataFrame.Internal.Expression

Methods

(+) :: Expr a -> Expr a -> Expr a #

(-) :: Expr a -> Expr a -> Expr a #

(*) :: Expr a -> Expr a -> Expr a #

negate :: Expr a -> Expr a #

abs :: Expr a -> Expr a #

signum :: Expr a -> Expr a #

fromInteger :: Integer -> Expr a #

(Fractional a, Columnable a) => Fractional (Expr a) Source # 
Instance details

Defined in DataFrame.Internal.Expression

Methods

(/) :: Expr a -> Expr a -> Expr a #

recip :: Expr a -> Expr a #

fromRational :: Rational -> Expr a #

Show a => Show (Expr a) Source # 
Instance details

Defined in DataFrame.Internal.Expression

Methods

showsPrec :: Int -> Expr a -> ShowS #

show :: Expr a -> String #

showList :: [Expr a] -> ShowS #

(Eq a, Show a) => Eq (Expr a) Source # 
Instance details

Defined in DataFrame.Internal.Expression

Methods

(==) :: Expr a -> Expr a -> Bool #

(/=) :: Expr a -> Expr a -> Bool #

data UExpr where Source #

Constructors

Wrap :: forall a. Columnable a => Expr a -> UExpr 

mkUnaggregatedColumn :: (Vector v a, Columnable a) => v a -> Vector Int -> Vector Int -> Vector (v a) Source #

add :: (Num a, Columnable a) => Expr a -> Expr a -> Expr a Source #

sub :: (Num a, Columnable a) => Expr a -> Expr a -> Expr a Source #

mult :: (Num a, Columnable a) => Expr a -> Expr a -> Expr a Source #

divide :: (Fractional a, Columnable a) => Expr a -> Expr a -> Expr a Source #