Class LongColumn
- All Implemented Interfaces:
Iterable<Long>
,Comparator<Long>
,CategoricalColumn<Long>
,NumericColumn<Long>
,Column<Long>
,NumberFilters
,NumberMapFunctions
,FilterSpec<Selection>
,NumberFilterSpec<Selection>
-
Field Summary
FieldsFields inherited from class tech.tablesaw.api.NumberColumn
comparator, locale
Fields inherited from class tech.tablesaw.columns.AbstractColumn
DEFAULT_ARRAY_SIZE, DEFAULT_COLUMN_TYPE_MISMATCH_MESSAGE
-
Method Summary
Modifier and TypeMethodDescriptionappend
(long i) Appends value to the bottom of this column and return this columnAppends all the values in the argument to the bottom of this column and return this columnAppends the value at the given row in the given column to the bottom of this column and return this columnappendCell
(String value) Add one element to the bottom of this column and set its value to the parsed value of the given String.appendCell
(String value, AbstractColumnParser<?> parser) Add one element to the bottom of this column and set its value to the parsed value of the given String, as performed by the given parserAppends a missing value appropriate to the columnAppends the given value to the bottom of this column and return this columnbyte[]
asBytes
(int rowNumber) Returns the contents of the cell at rowNumber as a byte[].asDateTimes
(ZoneOffset offset) Returns a DateTimeColumn where each value is the LocalDateTime represented by the values in this columnReturns a new DoubleColumn containing a value for each value in this columnReturns a new FloatColumn containing a value for each value in this columnReturns a new IntColumn containing a value for each value in this columnlong[]
Long[]
Returns an array of objects as appropriate for my type of columnasSet()
Returns a Set containing all the unique values in this columnReturns a new ShortColumn containing a value for each value in this columnbottom
(int n) Returns the smallest ("bottom") n values in the column TODO(lwhite): Consider whether this should exclude missingvoid
clear()
Removes all elements TODO: Make this return this columnint
copy()
Returns a deep copy of the receiverReturns a count of the number of elements in each category (i.e., the number of repetitions of each value) TODO: This needs to be well tested, especially for IntColumnint
Returns the count of unique values in this column.static LongColumn
static LongColumn
static LongColumn
static LongColumn
create
(String name, LongStream stream) boolean
equals
(int rowNumber1, int rowNumber2) Returns true if the value in this column at rowNumber1 is equal to the value at rowNumber2get
(int index) Returns the value at the given zero-based indexdouble
getDouble
(int row) Returns a double representation of the number atindex
long
getLong
(int row) Returns the value at the given index.getString
(int row) Returns a string representation of the value at the given row.getUnformattedString
(int row) Returns a String representation of the value at index r, without any formatting appliedstatic LongColumn
indexColumn
(String columnName, int size, int startsWith) Returns a new numeric column initialized with the given name and size.isIn
(long... numbers) boolean
isMissing
(int rowNumber) Returns true if the value at rowNumber is missingboolean
isMissingValue
(long value) isNotIn
(long... numbers) iterator()
lag
(int n) Returns a column of the same type and size as the receiver, containing the receivers values offset by n.it.unimi.dsi.fastutil.longs.LongIterator
Returns a copy of this column with the missing values removedset
(int i, long val) Sets the value at index row to the given value and return this columnset
(int row, String stringValue, AbstractColumnParser<?> parser) Sets the value at row to the parsed value of the given String using the given parser and returns this columnSets the value at row to the value at sourceRow in the given column and return this columnsetMissing
(int i) Sets the value at index i to the missing-value indicator for this column type, and return this columnint
size()
Returns the number of elements in this column, including missing valuesvoid
Sorts my values in ascending ordervoid
Sorts my values in descending ordersubset
(int[] rows) Return a column of the same type containing just those elements whose indexes are included in the given arraytop
(int n) Returns the largest ("top") n values in the column TODO(lwhite): Consider whether this should exclude missingunique()
Returns a column of the same type containing only the unique valuesint
valueHash
(int rowNumber) Returns an int suitable as a hash for the value in this column at the given indexstatic boolean
valueIsMissing
(long value) Methods inherited from class tech.tablesaw.api.NumberColumn
byteSize, countMissing, emptyCopy, emptyCopy, getPrintFormatter, rowComparator, set, set, setPrintFormatter, setPrintFormatter
Methods inherited from class tech.tablesaw.columns.AbstractColumn
asStringColumn, filter, first, indexOf, inRange, last, map, max, min, name, parser, sampleN, sampleX, set, set, setName, setParser, sorted, toString, type
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface tech.tablesaw.columns.Column
allMatch, anyMatch, asList, byteSize, columnWidth, contains, count, count, countMissing, emptyCopy, emptyCopy, filter, first, indexOf, inRange, last, map, map, mapInto, max, max, min, min, name, noneMatch, parser, print, reduce, reduce, rowComparator, sampleN, sampleX, set, set, set, setMissingTo, setName, setParser, sorted, title, type
Methods inherited from interface java.util.Comparator
equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
Methods inherited from interface java.lang.Iterable
forEach, spliterator
Methods inherited from interface tech.tablesaw.columns.numbers.NumberFilters
isBetweenExclusive, isBetweenInclusive, isCloseTo, isEqualTo, isEqualTo, isGreaterThan, isGreaterThan, isGreaterThanOrEqualTo, isGreaterThanOrEqualTo, isLessThan, isLessThan, isLessThanOrEqualTo, isLessThanOrEqualTo, isNegative, isNonNegative, isNotEqualTo, isNotEqualTo, isPositive, isZero
Methods inherited from interface tech.tablesaw.columns.numbers.NumberMapFunctions
abs, add, add, add, asPercent, asRatio, bin, cube, cubeRoot, cumMax, cumMin, cumProd, cumSum, difference, divide, divide, divide, log10, log1p, logN, multiply, multiply, multiply, name, neg, normalize, pctChange, power, power, reciprocal, remainder, remainder, round, roundInt, sqrt, square, subtract, subtract, subtract
Methods inherited from interface tech.tablesaw.api.NumericColumn
allMatch, anyMatch, asDoubleArray, asLongColumn, asStringColumn, autoCorrelation, autoCorrelation, count, count, eval, eval, geometricMean, interpolate, isEmpty, isIn, isMissing, isNotIn, isNotMissing, kendalls, kurtosis, lead, mapInto, max, max, mean, median, min, min, noneMatch, pctChange, pearsons, percentile, populationVariance, product, quadraticMean, quartile1, quartile3, range, reduce, reduce, rolling, skewness, spearmans, standardDeviation, stats, sum, summarize, summary, sumOfLogs, sumOfSquares, variance, where
-
Field Details
-
data
protected final it.unimi.dsi.fastutil.longs.LongArrayList data
-
-
Method Details
-
valueHash
public int valueHash(int rowNumber) Returns an int suitable as a hash for the value in this column at the given index -
equals
public boolean equals(int rowNumber1, int rowNumber2) Returns true if the value in this column at rowNumber1 is equal to the value at rowNumber2 -
create
-
create
-
create
-
create
-
createCol
- Specified by:
createCol
in classNumberColumn<LongColumn,
Long>
-
createCol
- Specified by:
createCol
in classNumberColumn<LongColumn,
Long>
-
indexColumn
Returns a new numeric column initialized with the given name and size. The values in the column are integers beginning at startsWith and continuing through size (exclusive), monotonically increasing by 1 TODO consider a generic fill function including steps or random samples from various distributions -
getString
Returns a string representation of the value at the given row.- Specified by:
getString
in interfaceColumn<Long>
- Overrides:
getString
in classNumberColumn<LongColumn,
Long> - Parameters:
row
- The index of the row.- Returns:
- value as String
-
valueIsMissing
public static boolean valueIsMissing(long value) -
size
public int size()Returns the number of elements in this column, including missing values- Specified by:
size
in interfaceColumn<Long>
- Specified by:
size
in interfaceNumberFilters
- Specified by:
size
in interfaceNumberMapFunctions
-
clear
public void clear()Removes all elements TODO: Make this return this column -
get
Returns the value at the given zero-based index -
subset
Return a column of the same type containing just those elements whose indexes are included in the given array- Specified by:
subset
in interfaceColumn<Long>
- Overrides:
subset
in classAbstractColumn<LongColumn,
Long>
-
isIn
-
isNotIn
-
unique
Returns a column of the same type containing only the unique values -
top
Returns the largest ("top") n values in the column TODO(lwhite): Consider whether this should exclude missing- Specified by:
top
in classNumberColumn<LongColumn,
Long> - Parameters:
n
- The maximum number of records to return. The actual number will be smaller if n is greater than the number of observations in the column- Returns:
- A list, possibly empty, of the largest observations
-
bottom
Returns the smallest ("bottom") n values in the column TODO(lwhite): Consider whether this should exclude missing- Specified by:
bottom
in classNumberColumn<LongColumn,
Long> - Parameters:
n
- The maximum number of records to return. The actual number will be smaller if n is greater than the number of observations in the column- Returns:
- A list, possibly empty, of the smallest n observations
-
lag
Returns a column of the same type and size as the receiver, containing the receivers values offset by n.For example if you lag a column containing 2, 3, 4 by 1, you get a column containing NA, 2, 3
-
removeMissing
Returns a copy of this column with the missing values removed- Specified by:
removeMissing
in interfaceColumn<Long>
-
append
-
append
Appends value to the bottom of this column and return this column -
copy
Returns a deep copy of the receiver -
asLongArray
public long[] asLongArray() -
asDateTimes
Returns a DateTimeColumn where each value is the LocalDateTime represented by the values in this columnThe values in this column must be longs that represent the time in milliseconds from the epoch as in standard Java date/time calculations
- Parameters:
offset
- The ZoneOffset to use in the calculation- Returns:
- A column of LocalDateTime values
-
iterator
-
longIterator
public it.unimi.dsi.fastutil.longs.LongIterator longIterator() -
asObjectArray
Returns an array of objects as appropriate for my type of column- Specified by:
asObjectArray
in interfaceColumn<Long>
-
compare
- Specified by:
compare
in interfaceComparator<Long>
-
set
Sets the value at index row to the given value and return this column -
set
-
set
Sets the value at row to the parsed value of the given String using the given parser and returns this column -
append
Appends all the values in the argument to the bottom of this column and return this column -
append
Appends the value at the given row in the given column to the bottom of this column and return this column -
set
Sets the value at row to the value at sourceRow in the given column and return this column -
appendMissing
Appends a missing value appropriate to the column- Specified by:
appendMissing
in interfaceColumn<Long>
-
asBytes
public byte[] asBytes(int rowNumber) Returns the contents of the cell at rowNumber as a byte[]. -
asSet
Returns a Set containing all the unique values in this column -
countUnique
public int countUnique()Returns the count of unique values in this column.- Specified by:
countUnique
in interfaceColumn<Long>
- Returns:
- unique values as int
-
getLong
public long getLong(int row) Returns the value at the given index. The actual value is returned if the ColumnType is INTEGER. Otherwise the value is rounded as described below.Returns the closest
int
to the argument, with ties rounding to positive infinity.Special cases:
Special cases:
- If the argument is NaN, the result is 0.
- If the argument is positive infinity or any value greater than or equal to the value of
Integer.MAX_VALUE
, an error will be thrown
- Parameters:
row
- the index of the value to be rounded to an integer.- Returns:
- the value of the argument rounded to the nearest
int
value. - Throws:
ClassCastException
- if the absolute value of the value to be rounded is too large to be cast to an int
-
getDouble
public double getDouble(int row) Returns a double representation of the number atindex
- Specified by:
getDouble
in interfaceNumberFilters
- Specified by:
getDouble
in interfaceNumberMapFunctions
- Specified by:
getDouble
in interfaceNumericColumn<Long>
-
isMissingValue
public boolean isMissingValue(long value) -
isMissing
public boolean isMissing(int rowNumber) Returns true if the value at rowNumber is missing- Specified by:
isMissing
in interfaceColumn<Long>
- Specified by:
isMissing
in interfaceNumberMapFunctions
-
setMissing
Sets the value at index i to the missing-value indicator for this column type, and return this column- Specified by:
setMissing
in interfaceColumn<Long>
-
sortAscending
public void sortAscending()Sorts my values in ascending order- Specified by:
sortAscending
in interfaceColumn<Long>
-
sortDescending
public void sortDescending()Sorts my values in descending order- Specified by:
sortDescending
in interfaceColumn<Long>
-
appendObj
Appends the given value to the bottom of this column and return this column -
appendCell
Add one element to the bottom of this column and set its value to the parsed value of the given String. Parsing is type-specific- Specified by:
appendCell
in interfaceColumn<Long>
-
appendCell
Add one element to the bottom of this column and set its value to the parsed value of the given String, as performed by the given parser- Specified by:
appendCell
in interfaceColumn<Long>
-
getUnformattedString
Returns a String representation of the value at index r, without any formatting applied- Specified by:
getUnformattedString
in interfaceColumn<Long>
-
countByCategory
Returns a count of the number of elements in each category (i.e., the number of repetitions of each value) TODO: This needs to be well tested, especially for IntColumn- Specified by:
countByCategory
in interfaceCategoricalColumn<Long>
-
asIntColumn
Returns a new IntColumn containing a value for each value in this columnA narrowing conversion of a signed integer to an integral type T simply discards all but the n lowest order bits, where n is the number of bits used to represent type T. In addition to a possible loss of information about the magnitude of the numeric value, this may cause the sign of the resulting value to differ from the sign of the input value.
In other words, if the element being converted is larger (or smaller) than Integer.MAX_VALUE (or Integer.MIN_VALUE) you will not get a conventionally good conversion.
Despite the fact that overflow, underflow, or other loss of information may occur, a narrowing primitive conversion never results in a run-time exception.
A missing value in the receiver is converted to a missing value in the result
- Specified by:
asIntColumn
in interfaceNumericColumn<Long>
-
asShortColumn
Returns a new ShortColumn containing a value for each value in this columnA narrowing conversion of a signed long to an integral type T simply discards all but the n lowest order bits, where n is the number of bits used to represent type T. In addition to a possible loss of information about the magnitude of the numeric value, this may cause the sign of the resulting value to differ from the sign of the input value.
In other words, if the element being converted is larger (or smaller) than Short.MAX_VALUE (or Short.MIN_VALUE) you will not get a conventionally good conversion.
Despite the fact that overflow, underflow, or other loss of information may occur, a narrowing primitive conversion never results in a run-time exception.
A missing value in the receiver is converted to a missing value in the result
- Specified by:
asShortColumn
in interfaceNumericColumn<Long>
-
asFloatColumn
Returns a new FloatColumn containing a value for each value in this columnA widening primitive conversion from a long to a float does not lose information about the overall magnitude of a numeric value. It may, however, result in loss of precision - that is, the result may lose some of the least significant bits of the value. In this case, the resulting floating-point value will be a correctly rounded version of the integer value, using IEEE 754 round-to-nearest mode.
Despite the fact that a loss of precision may occur, a widening primitive conversion never results in a run-time exception.
A missing value in the receiver is converted to a missing value in the result
- Specified by:
asFloatColumn
in interfaceNumericColumn<Long>
-
asDoubleColumn
Returns a new DoubleColumn containing a value for each value in this columnA widening primitive conversion from a long to a double does not lose information about the overall magnitude of a numeric value. It may, however, result in loss of precision - that is, the result may lose some of the least significant bits of the value. In this case, the resulting floating-point value will be a correctly rounded version of the integer value, using IEEE 754 round-to-nearest mode.
Despite the fact that a loss of precision may occur, a widening primitive conversion never results in a run-time exception.
A missing value in the receiver is converted to a missing value in the result
- Specified by:
asDoubleColumn
in interfaceNumericColumn<Long>
-