Packages

trait Table extends Tabular

The Table trait defines methods for operating 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 T - TimeNum - VectorT - 96 bit time Instant = (Long, Int)

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

Abstract Value Members

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

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

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

    tuple

    an aggregation of columns values (new row)

  2. abstract def colNames: Seq[String]

    Return the names of columns in the table.

  3. abstract def cols: Int

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

  4. abstract def colsMap: Map[String, Int]

    Return the mapping from column names to column positions.

  5. abstract def column(cName: String): Vec

    Return the column in the table with column name 'cName'.

    Return the column in the table with column name 'cName'.

    cName

    column name used to retrieve the column vector

  6. abstract def columns: Vector[Vec]

    Return all of the columns in the table.

  7. abstract def compress(cName: String*): Unit

    Compress the selected columns 'cName' in 'this' table.

    Compress the selected columns 'cName' in 'this' table.

    cName

    the names of the columns to be compressed

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

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

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

    tuple

    an aggregation of columns values (potential row)

  9. abstract def delete[T](p: Predicate[T]*): Table

    Delete the rows from 'this' table that satisfy the predicates.

    Delete the rows from 'this' table that satisfy the predicates.

    T

    the predicate type

    p

    tuple(1): column name, tuple(2): predicate (T => Boolean)

  10. abstract def domains: String

    Return the domains for the columns in the table.

  11. abstract def eproject(aggCol: AggColumn*)(cName: String*): Table

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    aggCol

    the columns to aggregate on: (aggregate function, new column name, old column name)*

    cName

    the other columns to project on

    See also

    en.wikipedia.org/wiki/Relational_algebra

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

    Group 'this' table by specified column names, returning 'this' table.

    Group 'this' table by specified column names, returning 'this' table.

    cName

    group columns

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

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

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

    r2

    the other table

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

    Intersect 'this' table and 'r2'.

    Intersect 'this' table and 'r2'. Check that the two tables are compatible.

    r2

    the other table

  15. abstract def join[T](r2: Table, p0: Predicate2[T], p: Predicate2[T]*): Table

    The theta join, handle the predicates in where are connect by "and" (where a....and b....).

    The theta join, handle the predicates in where are connect by "and" (where a....and b....).

    r2

    the second table

    p0

    the first theta join predicate (r1 cName, r2 cName, predicate to compare these two column)

    p

    the rest of theta join predicates (r1 cName, r2 cName, predicates to compare these two column)

  16. abstract def join(cNames1: Seq[String], cNames2: Seq[String], r2: Table): Table

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

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

    cNames1

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

    cNames2

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

    r2

    the rhs table in the join operation

  17. abstract def join(cNames: Seq[String], r2: Table): Table

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

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

    cNames

    the common join column names for both table

    r2

    the rhs table in the join operation

  18. abstract def leftJoin(thres: Double = 0.01)(cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "apprimate left-join".

    Join 'this' table and 'r2' by performing an "apprimate left-join". Rows from both tables are compared requiring 'cName1' values to apprximately equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the left table are maintained with missing values indicators used where needed.

    thres

    the approximate equality threshold

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

  19. abstract def leftJoin(cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "left-join".

    Join 'this' table and 'r2' by performing an "left-join". Rows from both tables are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the left table are maintained with missing values indicators used where needed.

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

  20. abstract def minus(r2: Table): Table

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

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

    r2

    the other table

  21. abstract def orderBy(cName: String*): Table

    Order (ascending) the rows in the table by the selected columns 'cName'.

    Order (ascending) the rows in the table by the selected columns 'cName'. A stable sorting is used to allow sorting on multiple columns.

    cName

    the column names that are to be sorted

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

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

    Select elements from column 'cName' in 'this' table 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

  23. abstract def pisigmaD(cName: String, p: (Double) ⇒ Boolean): Table
  24. abstract def pisigmaI(cName: String, p: (Int) ⇒ Boolean): Table
  25. abstract def pisigmaL(cName: String, p: (Long) ⇒ Boolean): Table
  26. abstract def pisigmaQ(cName: String, p: (Rational) ⇒ Boolean): Table
  27. abstract def pisigmaR(cName: String, p: (Real) ⇒ Boolean): Table
  28. abstract def pisigmaS(cName: String, p: (StrNum) ⇒ Boolean): Table
  29. abstract def product(r2: Table): Table

    Compute the Cartesian product of 'this' table and 'r2' ('this × r2').

    Compute the Cartesian product of 'this' table and 'r2' ('this × r2').

    r2

    the second table

  30. abstract def project(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

  31. abstract def project(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

  32. abstract def rename(newName: String): Table

    Rename 'this' table, returning a shallow copy of the table.

    Rename 'this' table, returning a shallow copy of the table.

    newName

    the new name for the table.

  33. abstract def reverseOrderBy(cName: String*): Table

    Order (descending) the rows in the table by the selected columns 'cName'.

    Order (descending) the rows in the table by the selected columns 'cName'. A stable sorting is used to allow sorting on multiple columns.

    cName

    the column names that are to be sorted

  34. 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

  35. abstract def rows: Int

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

  36. abstract def save(): Unit

    Save 'this' table in a file using serialization.

  37. abstract def select[T](cName: String, p: (T) ⇒ Boolean)(implicit arg0: ClassTag[T]): Table

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

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

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  38. 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

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

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

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

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  40. abstract def selectD(cName: String, p: (Double) ⇒ Boolean): Seq[Int]
  41. abstract def selectI(cName: String, p: (Int) ⇒ Boolean): Seq[Int]
  42. abstract def selectL(cName: String, p: (Long) ⇒ Boolean): Seq[Int]
  43. abstract def selectQ(cName: String, p: (Rational) ⇒ Boolean): Seq[Int]
  44. abstract def selectR(cName: String, p: (Real) ⇒ Boolean): Seq[Int]
  45. abstract def selectS(cName: String, p: (StrNum) ⇒ Boolean): Seq[Int]
  46. abstract def show(limit: Int = Int.MaxValue): Unit

    Show 'this' relation row by row.

    Show 'this' relation row by row.

    limit

    the limit on the number of tuples to display

    Definition Classes
    Tabular
  47. abstract def sigmaC(cName: String, p: (Complex) ⇒ Boolean): Table

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

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

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  48. abstract def sigmaD(cName: String, p: (Double) ⇒ Boolean): Table
  49. abstract def sigmaI(cName: String, p: (Int) ⇒ Boolean): Table
  50. abstract def sigmaL(cName: String, p: (Long) ⇒ Boolean): Table
  51. abstract def sigmaQ(cName: String, p: (Rational) ⇒ Boolean): Table
  52. abstract def sigmaR(cName: String, p: (Real) ⇒ Boolean): Table
  53. abstract def sigmaS(cName: String, p: (StrNum) ⇒ Boolean): Table
  54. abstract def toMatriD(colPos: Seq[Int], kind: MatrixKind = DENSE): MatriD

    Convert 'this' table into a matrix of doubles, e.g.,

    Convert 'this' table into a matrix of doubles, e.g.,

    in the regression equation: 'xb = y' create matrix 'xy'

    colPos

    the column positions to use for the matrix

    kind

    the kind of matrix to create

  55. abstract def toMatriDD(colPos: Seq[Int], colPosV: Int, kind: MatrixKind = DENSE): (MatriD, VectorD)

    Convert 'this' table into a matrix of doubles and a vector of doubles.

    Convert 'this' table into a matrix of doubles and a vector of doubles.

    in the regression equation: 'xb = y' create matrix 'x' and vector 'y'

    colPos

    the column positions to use for the matrix

    colPosV

    the column position to use for the vector

    kind

    the kind of matrix to create

  56. abstract def toMatriDI(colPos: Seq[Int], colPosV: Int, kind: MatrixKind = DENSE): (MatriD, VectorI)

    Convert 'this' table into a matrix of doubles and a vector of integers.

    Convert 'this' table into a matrix of doubles and a vector of integers.

    in the regression equation: 'xb = y' create matrix 'x' and vector 'y'

    colPos

    the column positions to use for the matrix

    colPosV

    the column position to use for the vector

    kind

    the kind of matrix to create

  57. abstract def toMatriI(colPos: Seq[Int], kind: MatrixKind = DENSE): MatriI

    Convert 'this' table into a matrix of integers.

    Convert 'this' table into a matrix of integers.

    in the regression equation: 'xb = y' create matrix 'xy'

    colPos

    the column positions to use for the matrix

    kind

    the kind of matrix to create

  58. abstract def toMatriII(colPos: Seq[Int], colPosV: Int, kind: MatrixKind = DENSE): (MatriI, VectorI)

    Convert 'this' table into a matrix of integers and a vector of integers.

    Convert 'this' table into a matrix of integers and a vector of integers.

    in the regression equation: 'xb = y' create matrix 'x' and vector 'y'

    colPos

    the column positions to use for the matrix

    colPosV

    the column position to use for the vector

    kind

    the kind of matrix to create

  59. abstract def toVectorC(colName: String): VectorC

    Convert the 'colName' column of 'this' relation into a vector of complex numbers.

    Convert the 'colName' column of 'this' relation into a vector of complex numbers.

    colName

    the column name to use for the vector

  60. abstract def toVectorC(colPos: Int = 0): VectorC

    Convert the 'colPos' column of 'this' relation into a vector of complex numbers.

    Convert the 'colPos' column of 'this' relation into a vector of complex numbers.

    colPos

    the column position to use for the vector

  61. abstract def toVectorD(colName: String): VectorD

    Convert the 'colName' column of 'this' relation into a vector of doubles.

    Convert the 'colName' column of 'this' relation into a vector of doubles.

    colName

    the column name to use for the vector

  62. abstract def toVectorD(colPos: Int = 0): VectorD

    Convert the 'colPos' column of 'this' relation into a vector of doubles.

    Convert the 'colPos' column of 'this' relation into a vector of doubles.

    colPos

    the column position to use for the vector

  63. abstract def toVectorI(colName: String): VectorI

    Convert the 'colName' column of 'this' relation into a vector of integers.

    Convert the 'colName' column of 'this' relation into a vector of integers.

    colName

    the column name to use for the vector

  64. abstract def toVectorI(colPos: Int = 0): VectorI

    Convert the 'colPos' column of 'this' relation into a vector of integers.

    Convert the 'colPos' column of 'this' relation into a vector of integers.

    colPos

    the column position to use for the vector

  65. abstract def toVectorL(colName: String): VectorL

    Convert the 'colName' column of 'this' relation into a vector of long integers.

    Convert the 'colName' column of 'this' relation into a vector of long integers.

    colName

    the column name to use for the vector

  66. abstract def toVectorL(colPos: Int = 0): VectorL

    Convert the 'colPos' column of 'this' relation into a vector of long integers.

    Convert the 'colPos' column of 'this' relation into a vector of long integers.

    colPos

    the column position to use for the vector

  67. abstract def toVectorQ(colName: String): VectorQ

    Convert the 'colName' column of 'this' relation into a vector of rational numbers.

    Convert the 'colName' column of 'this' relation into a vector of rational numbers.

    colName

    the column name to use for the vector

  68. abstract def toVectorQ(colPos: Int = 0): VectorQ

    Convert the 'colPos' column of 'this' relation into a vector of rational numbers.

    Convert the 'colPos' column of 'this' relation into a vector of rational numbers.

    colPos

    the column position to use for the vector

  69. abstract def toVectorR(colName: String): VectorR

    Convert the 'colName' column of 'this' relation into a vector of real numbers.

    Convert the 'colName' column of 'this' relation into a vector of real numbers.

    colName

    the column name to use for the vector

  70. abstract def toVectorR(colPos: Int = 0): VectorR

    Convert the 'colPos' column of 'this' relation into a vector of real numbers.

    Convert the 'colPos' column of 'this' relation into a vector of real numbers.

    colPos

    the column position to use for the vector

  71. abstract def toVectorS(colName: String): VectorS

    Convert the 'colName' column of 'this' relation into a vector of string-num.

    Convert the 'colName' column of 'this' relation into a vector of string-num.

    colName

    the column name to use for the vector

  72. abstract def toVectorS(colPos: Int = 0): VectorS

    Convert the 'colPos' column of 'this' relation into a vector of string-num.

    Convert the 'colPos' column of 'this' relation into a vector of string-num.

    colPos

    the column position to use for the vector

  73. abstract def toVectorT(colName: String): VectorT

    Convert the 'colName' column of 'this' relation into a vector of time-num.

    Convert the 'colName' column of 'this' relation into a vector of time-num.

    colName

    the column name to use for the vector

  74. abstract def toVectorT(colPos: Int = 0): VectorT

    Convert the 'colPos' column of 'this' relation into a vector of time-num.

    Convert the 'colPos' column of 'this' relation into a vector of time-num.

    colPos

    the column position to use for the vector

  75. abstract def uncompress(cName: String*): Unit

    Uncompress the selected columns 'cName' in 'this' table.

    Uncompress the selected columns 'cName' in 'this' table.

    cName

    the names of the columns to be uncompressed

  76. abstract def union(r2: Table): Table

    Union 'this' table and 'r2'.

    Union 'this' table and 'r2'. Check that the two tables are compatible.

    r2

    the other table

  77. abstract def update[T](cName: String, func: (T) ⇒ T, pred: (T) ⇒ Boolean): Unit

    Update the column named 'cName' using function 'func' for elements where the predicate 'pred' evaluates to true.

    Update the column named 'cName' using function 'func' for elements where the predicate 'pred' evaluates to true.

    T

    type of the column

    cName

    the name of the column to be updated

    func

    the function used to assign updated values // FIX - generalize type

    pred

    the predicated used to select elements for update

  78. abstract def update[T](cName: String, func: (T) ⇒ T, matchVal: T): Unit

    Update the column named 'cName' using function 'func' for elements with value 'matchStr'.

    Update the column named 'cName' using function 'func' for elements with value 'matchStr'.

    T

    type of the column

    cName

    the name of the column to be updated

    func

    the function used to assign updated values

    matchVal

    the value to be matched to elements

  79. abstract def update[T](cName: String, newVal: T, matchVal: T): Unit

    Update the column named 'cName' using function 'func' for elements with value 'matchStr'.

    Update the column named 'cName' using function 'func' for elements with value 'matchStr'.

    T

    type of the column

    cName

    the name of the column to be updated

    newVal

    the value used to assign updated values

    matchVal

    the value to be matched to elements

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

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

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

    fileName

    the file name of the data file

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

    Write 'this' table into a JSON file.

    Write 'this' table into a JSON file.

    fileName

    the file name of the data file

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def -(r2: Table): Table

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

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

    r2

    the other table

  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  7. 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

    Attributes
    protected
  8. def epi(aggCol: AggColumn*)(cName: String*): Table

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    aggCol

    the columns to aggregate on: (aggregate function, new column name, old column name)*

    cName

    the other columns to project on

    See also

    en.wikipedia.org/wiki/Relational_algebra

  9. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  10. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. def indices: Range

    Return the range of index values for the table.

  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. def join(cName1: String, cName2: String, r2: Table): Table

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

    Join 'this' table and 'r2' by performing an "equi-join". Rows from both tables 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 name of this table (e.g., the Foreign Key)

    cName2

    the join column name of table r2 (e.g., the Primary Key)

    r2

    the rhs table in the join operation

  16. def join(cName: String, r2: Table): Table

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

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

    cName

    the common join column name for both table

    r2

    the rhs table in the join operation

  17. def join(r2: Table): Table

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

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

    r2

    the rhs table in the join operation

  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  21. 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

  22. 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

  23. def rightJoin(cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "right-join".

    Join 'this' table and 'r2' by performing an "right-join". Rows from both tables are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the right table are maintained with missing values indicators used where needed.

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

  24. 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'

    Annotations
    @throws( classOf [Exception] )
  25. def sigma[T](cName: String, p: (T) ⇒ Boolean)(implicit arg0: ClassTag[T]): Table

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

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

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. 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

    Attributes
    protected
  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  31. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. def ×(r2: Table): Table

    Compute the Cartesian product of 'this' table and 'r2' ('this × r2').

    Compute the Cartesian product of 'this' table and 'r2' ('this × r2').

    r2

    the second table

  33. def Π(aggCol: AggColumn*)(cName: String*): Table

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    Aggregate/project on the given columns (an extended projection operator that applies aggregate operators to aggregation columns and regular projection to projection columns).

    aggCol

    the columns to aggregate on: (aggregate function, new column name, old column name)*

    cName

    the other columns to project on

    See also

    en.wikipedia.org/wiki/Relational_algebra

  34. def γ(cName: String*): Table

    Group 'this' table by specified column names, returning 'this' table.

    Group 'this' table by specified column names, returning 'this' table.

    cName

    group columns

  35. def ζ(cName: String*): Unit

    Compress the selected columns 'cName' in 'this' table.

    Compress the selected columns 'cName' in 'this' table.

    cName

    the names of the columns to be compressed

  36. def ζζ(cName: String*): Unit

    Uncompress the selected columns 'cName' in 'this' table.

    Uncompress the selected columns 'cName' in 'this' table.

    cName

    the names of the columns to be uncompressed

  37. def π(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

  38. 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

  39. def σ[T](cName: String, p: (T) ⇒ Boolean)(implicit arg0: ClassTag[T]): Table

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

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

    cName

    the name of the column used for selection

    p

    the predicate (Boolean function) to be satisfied

  40. def ω(cName: String*): Table

    Order (ascending) the rows in the table by the selected columns 'cName'.

    Order (ascending) the rows in the table by the selected columns 'cName'. A stable sorting is used to allow sorting on multiple columns.

    cName

    the column names that are to be sorted

  41. def ωω(cName: String*): Table

    Order (descending) the rows in the table by the selected columns 'cName'.

    Order (descending) the rows in the table by the selected columns 'cName'. A stable sorting is used to allow sorting on multiple columns.

    cName

    the column names that are to be sorted

  42. def (r2: Table): Table

    Intersect 'this' table and 'r2'.

    Intersect 'this' table and 'r2'. Check that the two tables are compatible.

    r2

    the other table

  43. def (r2: Table): Table

    Union 'this' table and 'r2'.

    Union 'this' table and 'r2'. Check that the two tables are compatible.

    r2

    the other table

  44. def [T](r2: Table, p0: Predicate2[T], p: Predicate2[T]*): Table

    The theta join, handle the predicates in where are connect by "and" (where a....and b....).

    The theta join, handle the predicates in where are connect by "and" (where a....and b....).

    r2

    the second table

    p0

    the first theta join predicate (r1 cName, r2 cName, predicate to compare these two column)

    p

    the rest of theta join predicates (r1 cName, r2 cName, predicates to compare these two column)

  45. def (cNames1: Seq[String], cNames2: Seq[String], r2: Table): Table

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

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

    cNames1

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

    cNames2

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

    r2

    the rhs table in the join operation

  46. def (cName1: String, cName2: String, r2: Table): Table

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

    Join 'this' table and 'r2' by performing an "equi-join". Rows from both tables 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 name of this table (e.g., the Foreign Key)

    cName2

    the join column name of table r2 (e.g., the Primary Key)

    r2

    the rhs table in the join operation

  47. def (cNames: Seq[String], r2: Table): Table

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

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

    cNames

    the common join column names for both table

    r2

    the rhs table in the join operation

  48. def (cName: String, r2: Table): Table

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

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

    cName

    the common join column name for both table

    r2

    the rhs table in the join operation

  49. def (r2: Table): Table

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

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

    r2

    the rhs table in the join operation

  50. def (thres: Double = 0.01)(cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "apprimate left-join".

    Join 'this' table and 'r2' by performing an "apprimate left-join". Rows from both tables are compared requiring 'cName1' values to apprximately equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the left table are maintained with missing values indicators used where needed.

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

  51. def (cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "left-join".

    Join 'this' table and 'r2' by performing an "left-join". Rows from both tables are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the left table are maintained with missing values indicators used where needed. Note: although this is the semi-join symbol, due to Unicode limitations, it is used for left-join.

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

  52. def (cName1: String, cName2: String, r2: Table): Table

    Join 'this' table and 'r2' by performing an "right-join".

    Join 'this' table and 'r2' by performing an "right-join". Rows from both tables are compared requiring 'cName1' values to equal 'cName2' values. Disambiguate column names by appending "2" to the end of any duplicate column name. All rows from the right table are maintained with missing values indicators used where needed.

    cName1

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

    cName2

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

    r2

    the rhs table in the join operation

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from Tabular

Inherited from AnyRef

Inherited from Any

Ungrouped