Packages

trait Table extends AnyRef

The Table trait stores and operates on vectors. The vectors form the columns of the columnar relational datastore. Columns may have any of the following types:

C - Complex - VectorC - 128 bit complex number a + bi D - Double - VectorD - 64 bit double precision floating point number I - Int - VectorI - 32 bit integer L - Long - VectorL - 64 bit long integer Q - Rational - VectorQ - 128 bit ratio of two long integers R - Real - VectorR - 128 bit quad precision floating point number S - StrNum - VectorS - variable length numeric string


Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Table
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def -(r2: Table): Table

    Take the difference of 'this' relation and 'r2' ('this - r2').

    Take the difference of 'this' relation and 'r2' ('this - r2'). Check that the two relations are compatible.

    r2

    the other relation

  2. abstract def ><(r2: Table): Table

    Join 'this' relation and 'r2 by performing a "natural-join".

    Join 'this' relation and 'r2 by performing a "natural-join". Rows from both relations are compared requiring agreement on common attributes (column names).

    r2

    the rhs relation in the join operation

  3. abstract def add(tuple: Row): Unit

    Add 'tuple to 'this' relation as a new row.

    Add 'tuple to 'this' relation as a new row. FIX: want an efficient, covariant, mutable data structure, but Array is invariant.

    tuple

    an aggregation of columns values (new row)

  4. abstract def cols: Int

    Return the size in terms of number of columns in the relation.

  5. abstract def contains(tuple: Row): Boolean

    Determine whether 'this' relation contains a row matching the given 'tuple'.

    Determine whether 'this' relation contains a row matching the given 'tuple'.

    tuple

    an aggregation of columns values (potential row)

  6. abstract def incompatible(r2: Table): Boolean

    Determine whether 'this' relation and 'r2' are incompatible by having differing numbers of columns or differing domain strings.

    Determine whether 'this' relation and 'r2' are incompatible by having differing numbers of columns or differing domain strings.

    r2

    the other relation

  7. abstract def intersect(r2: Table): Table

    Intersect 'this' relation and 'r2'.

    Intersect 'this' relation and 'r2'. Check that the two relations are compatible.

    r2

    the other relation

  8. abstract def join(cName: Seq[String], r2: Table): Table

    Join 'this' relation and 'r2 by performing a "natural-join".

    Join 'this' relation and 'r2 by performing a "natural-join". Rows from both relations are compared requiring 'cName' values to be equal.

    cName

    the common join column names for both relation

    r2

    the rhs relation in the join operation

  9. abstract def join(cName1: String, cName2: String, r2: Table): Table

    Join 'this' relation and 'r2 by performing an "equi-join".

    Join 'this' relation and 'r2 by performing an "equi-join". Rows from both relations are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name.

    cName1

    the string of join column names of this relation (e.g., the Foreign Key)

    cName2

    the string of join column names of relation r2 (e.g., the Primary Key)

    r2

    the rhs relation in the join operation

  10. abstract def join(cName1: Seq[String], cName2: Seq[String], r2: Table): Table

    Join 'this' relation and 'r2 by performing an "equi-join".

    Join 'this' relation and 'r2 by performing an "equi-join". Rows from both relations are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name.

    cName1

    the join column names of this relation (e.g., the Foreign Key)

    cName2

    the join column names of relation r2 (e.g., the Primary Key)

    r2

    the rhs relation in the join operation

  11. abstract def pi(cPos: Seq[Int], cName: Seq[String] = null): Table

    Project onto the columns with the given column positions.

    Project onto the columns with the given column positions.

    cPos

    the column positions to project onto

    cName

    the optional new names for the columns to project onto

  12. abstract def pi(cName: String*): Table

    Project onto the columns with the given column names.

    Project onto the columns with the given column names.

    cName

    the names of the columns to project onto

  13. abstract def pisigmaC(cName: String, p: (Complex) ⇒ Boolean): Table

    Select elements from column 'cName' in 'this' relation that satisfy the predicate 'p' and project onto that column.

    Select elements from column 'cName' in 'this' relation that satisfy the predicate 'p' and project onto that column.

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  14. abstract def pisigmaD(cName: String, p: (Double) ⇒ Boolean): Table
  15. abstract def pisigmaI(cName: String, p: (Int) ⇒ Boolean): Table
  16. abstract def pisigmaL(cName: String, p: (Long) ⇒ Boolean): Table
  17. abstract def pisigmaQ(cName: String, p: (Rational) ⇒ Boolean): Table
  18. abstract def pisigmaR(cName: String, p: (Real) ⇒ Boolean): Table
  19. abstract def pisigmaS(cName: String, p: (StrNum) ⇒ Boolean): Table
  20. abstract def row(i: Int): Row

    Create a row by pulling values from all columns at position 'i'.

    Create a row by pulling values from all columns at position 'i'.

    i

    the 'i'th position

  21. abstract def rows: Int

    Return the size in terms of number of rows in the relation.

  22. abstract def save(): Unit

    Save 'this' relation in a file using serialization.

  23. abstract def selectAt(pos: Seq[Int]): Table

    Select across all columns at the specified column positions.

    Select across all columns at the specified column positions.

    pos

    the specified column positions

  24. abstract def selectC(cName: String, p: (Complex) ⇒ Boolean): Seq[Int]

    Select the positions of elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    Select the positions of elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  25. abstract def selectD(cName: String, p: (Double) ⇒ Boolean): Seq[Int]
  26. abstract def selectI(cName: String, p: (Int) ⇒ Boolean): Seq[Int]
  27. abstract def selectL(cName: String, p: (Long) ⇒ Boolean): Seq[Int]
  28. abstract def selectQ(cName: String, p: (Rational) ⇒ Boolean): Seq[Int]
  29. abstract def selectR(cName: String, p: (Real) ⇒ Boolean): Seq[Int]
  30. abstract def selectS(cName: String, p: (StrNum) ⇒ Boolean): Seq[Int]
  31. abstract def show(): Unit

    Show 'this' relation row by row.

  32. abstract def sigma[T](cName: String, p: (T) ⇒ Boolean): Table

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  33. abstract def sigmaC(cName: String, p: (Complex) ⇒ Boolean): Table

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  34. abstract def sigmaD(cName: String, p: (Double) ⇒ Boolean): Table
  35. abstract def sigmaI(cName: String, p: (Int) ⇒ Boolean): Table
  36. abstract def sigmaL(cName: String, p: (Long) ⇒ Boolean): Table
  37. abstract def sigmaQ(cName: String, p: (Rational) ⇒ Boolean): Table
  38. abstract def sigmaR(cName: String, p: (Real) ⇒ Boolean): Table
  39. abstract def sigmaS(cName: String, p: (StrNum) ⇒ Boolean): Table
  40. abstract def union(r2: Table): Table

    Union 'this' relation and 'r2'.

    Union 'this' relation and 'r2'. Check that the two relations are compatible.

    r2

    the other relation

  41. abstract def writeCSV(fileName: String): Unit

    Write 'this' relation into a CSV file with each row written to a line.

    Write 'this' relation into a CSV file with each row written to a line.

    fileName

    the file name of the data file

  42. abstract def writeJSON(fileName: String): Unit

    Write 'this' relation into a JSON file.

    Write 'this' relation into a JSON file.

    fileName

    the file name of the data file

  43. abstract def π(cName: String*): Table

    Project onto the columns with the given column names.

    Project onto the columns with the given column names.

    cName

    the names of the columns to project onto

  44. abstract def σ[T](cName: String, p: (T) ⇒ Boolean): Table

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    Select elements from columns in 'cName' in 'this' relation that satisfy the predicate 'p'.

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  45. abstract def (r2: Table): Table

    Intersect 'this' relation and 'r2'.

    Intersect 'this' relation and 'r2'. Check that the two relations are compatible.

    r2

    the other relation

  46. abstract def (r2: Table): Table

    Union 'this' relation and 'r2'.

    Union 'this' relation and 'r2'. Check that the two relations are compatible.

    r2

    the other relation

  47. abstract def (r2: Table): Table

    Join 'this' relation and 'r2 by performing a "natural-join".

    Join 'this' relation and 'r2 by performing a "natural-join". Rows from both relations are compared requiring agreement on common attributes (column names).

    r2

    the rhs relation in the join operation

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def disambiguate(cn1: Seq[String], cn2: Seq[String]): Seq[String]

    Combine two sequences of column names and disambiguate any repeated names by appending "2".

    Combine two sequences of column names and disambiguate any repeated names by appending "2".

    cn1

    the first sequence of column names

    cn2

    the second sequence of column names

  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  12. def indices: Range

    Return the range of index values for the relation.

  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  17. def row(sos: Seq[String], _typ: String): Row

    Create a row by pulling values from an array of strings and converting elements to their appropriate types.

    Create a row by pulling values from an array of strings and converting elements to their appropriate types.

    sos

    the sequence of strings holding the values

    _typ

    the string of corresponding types, e.g., 'SDI'

  18. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  19. def toString(): String
    Definition Classes
    AnyRef → Any
  20. def uniq_union(cn1: Seq[String], cn2: Seq[String]): Seq[String]

    Combine two sequences of column names, keeping all names from 'cn1' and only those in 'cn2' that are not repeats (i.e., not already in 'cn1').

    Combine two sequences of column names, keeping all names from 'cn1' and only those in 'cn2' that are not repeats (i.e., not already in 'cn1').

    cn1

    the first sequence of column names

    cn2

    the second sequence of column names

  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped