public class StringColumn extends AbstractColumn<String> implements CategoricalColumn<String>, StringFilters, StringMapFunctions, StringReduceUtils
Because the MISSING_VALUE for this column type is an empty string, there is little or no need for special handling of missing values in this class's methods.
DEFAULT_ARRAY_SIZE| Modifier and Type | Method and Description |
|---|---|
StringColumn |
addAll(List<String> stringValues)
Add all the strings in the list to this column
|
StringColumn |
append(Column<String> column) |
Column<String> |
append(Column<String> column,
int row) |
StringColumn |
append(String value)
Added for naming consistency with all other columns
|
StringColumn |
appendCell(String object) |
StringColumn |
appendCell(String object,
AbstractColumnParser<?> parser) |
StringColumn |
appendMissing()
Appends a missing value appropriate to the column
|
StringColumn |
appendObj(Object obj) |
byte[] |
asBytes(int rowNumber)
Returns the contents of the cell at rowNumber as a byte[]
|
double[] |
asDoubleArray() |
DoubleColumn |
asDoubleColumn() |
List<String> |
asList()
Returns a List<String> representation of all the values in this column
|
String[] |
asObjectArray() |
Set<String> |
asSet() |
StringColumn |
asStringColumn() |
TextColumn |
asTextColumn() |
List<String> |
bottom(int n)
Returns the smallest ("bottom") n values in the column
|
int |
byteSize()
Returns the width of a cell in this column, in bytes.
|
void |
clear() |
int |
compare(String o1,
String o2) |
boolean |
contains(String aString)
Returns true if this column contains a cell with the given string, and false otherwise
|
StringColumn |
copy()
Returns a deep copy of the receiver
|
Table |
countByCategory() |
int |
countMissing()
Returns the count of missing values in this column
|
int |
countOccurrences(String value) |
int |
countUnique()
Returns the count of unique values in this column.
|
static StringColumn |
create(String name) |
static StringColumn |
create(String name,
int size) |
static StringColumn |
create(String name,
List<String> strings) |
static StringColumn |
create(String name,
String[] strings) |
StringColumn |
emptyCopy()
Returns a copy of the receiver with no data.
|
StringColumn |
emptyCopy(int rowSize)
Returns an empty copy of the receiver, with its internal storage initialized to the given row size.
|
StringColumn |
filter(Predicate<? super String> test)
Returns a new Column of the same type with only those rows satisfying the predicate
|
StringColumn |
first(int numRows) |
int |
firstIndexOf(String value) |
String |
get(int rowIndex)
Returns the value at rowIndex in this column.
|
double |
getDouble(int i) |
List<BooleanColumn> |
getDummies()
Returns a list of boolean columns suitable for use as dummy variables in, for example, regression analysis,
select a column of categorical data must be encoded as a list of columns, such that each column represents
a single category and indicates whether it is present (1) or not present (0)
|
StringColumnFormatter |
getPrintFormatter() |
String |
getString(int row)
Returns a string representation of the value at the given row.
|
String |
getUnformattedString(int row) |
StringColumn |
inRange(int start,
int end)
Returns a column containing the rows in this column beginning with start inclusive, and ending with end exclusive
|
boolean |
isEmpty()
Returns true if the column has no data
|
Selection |
isEqualTo(String string) |
Selection |
isIn(Collection<String> strings) |
Selection |
isIn(String... strings) |
boolean |
isMissing(int rowNumber) |
Selection |
isNotEqualTo(String string) |
Selection |
isNotIn(Collection<String> strings) |
Selection |
isNotIn(String... strings) |
Iterator<String> |
iterator() |
StringColumn |
lag(int n)
Returns a column of the same type and size as the receiver, containing the receivers values offset by n.
|
StringColumn |
last(int numRows) |
StringColumn |
lead(int n)
Returns a column of the same type as the receiver, containing the receivers values offset -n
For example if you lead a column containing 2, 3, 4 by 1, you get a column containing 3, 4, NA.
|
StringColumn |
map(Function<? super String,? extends String> fun)
Maps the function across all rows, appending the results to a new Column of the same type
|
StringColumn |
max(Column<String> other)
Returns a column containing the element-wise min between this column and other column
TODO(lwhite) Override in column subtypes for better performance
|
StringColumn |
min(Column<String> other)
Returns a column containing the element-wise min between this column and other column
TODO(lwhite) Override in column subtypes for better performance
|
StringColumn |
removeMissing() |
it.unimi.dsi.fastutil.ints.IntComparator |
rowComparator() |
StringColumn |
sampleN(int n)
Returns a column containing a random sample of the values in this column
|
StringColumn |
sampleX(double proportion)
Returns a table consisting of randomly selected values from this column.
|
Column<String> |
set(int row,
Column<String> column,
int sourceRow) |
StringColumn |
set(int rowIndex,
String stringValue) |
StringColumn |
set(Selection condition,
Column<String> other)
Updates this column where values matching the selection are replaced with the corresponding value
from the given column
|
StringColumn |
set(Selection rowSelection,
String newValue)
Conditionally update this column, replacing current values with newValue for all rows where the current value
matches the selection criteria
|
Column<String> |
setMissing(int i) |
StringColumn |
setName(String name)
Sets the columns name to the given string
|
void |
setPrintFormatter(StringColumnFormatter formatter) |
int |
size()
Returns the number of elements (a.k.a.
|
void |
sortAscending() |
void |
sortDescending() |
StringColumn |
sorted(Comparator<? super String> comp)
Returns a new Column of the same type sorted according to the provided Comparator
|
StringColumn |
subset(int[] rows) |
Table |
summary() |
List<String> |
top(int n)
Returns the largest ("top") n values in the column
|
StringColumn |
unique()
Returns a new Column containing all the unique values in this column
|
static boolean |
valueIsMissing(String string) |
StringColumn |
where(Selection selection) |
name, toString, typeclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcontainsString, endsWith, equalsIgnoreCase, equalsIgnoreCase, eval, eval, eval, eval, isAlpha, isAlphaNumeric, isEmptyString, isEqualTo, isLongerThan, isLowerCase, isMissing, isNotEqualTo, isNotMissing, isNumeric, isShorterThan, isUpperCase, lengthEquals, matchesRegex, startsWith, startsWithabbreviate, commonPrefix, commonSuffix, concatenate, countTokens, distance, format, join, length, lowerCase, padEnd, padStart, parseInt, replaceAll, replaceAll, replaceFirst, substring, substring, tokenizeAndRemoveDuplicates, tokenizeAndSort, tokenizeAndSort, tokens, trim, uniqueTokens, upperCaseappendAll, appendAllallMatch, anyMatch, columnWidth, count, count, mapInto, max, min, name, noneMatch, print, reduce, reduce, rolling, title, typeforEach, spliteratorcomparing, comparing, comparingDouble, comparingInt, comparingLong, equals, naturalOrder, nullsFirst, nullsLast, reversed, reverseOrder, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLongpublic static boolean valueIsMissing(String string)
public StringColumn appendMissing()
ColumnappendMissing in interface Column<String>public static StringColumn create(String name)
public static StringColumn create(String name, String[] strings)
public static StringColumn create(String name, List<String> strings)
public static StringColumn create(String name, int size)
public boolean isMissing(int rowNumber)
public void setPrintFormatter(StringColumnFormatter formatter)
public StringColumnFormatter getPrintFormatter()
public String getString(int row)
Columnpublic String getUnformattedString(int row)
getUnformattedString in interface Column<String>public StringColumn emptyCopy()
Columnpublic StringColumn emptyCopy(int rowSize)
Columnpublic void sortAscending()
sortAscending in interface Column<String>public void sortDescending()
sortDescending in interface Column<String>public int size()
public String get(int rowIndex)
get in interface Column<String>get in interface StringFiltersrowIndex - index of the rowIndexOutOfBoundsException - if the given rowIndex is not in the columnpublic List<String> asList()
NOTE: Unless you really need a string consider using the column itself for large datasets as it uses much less memory
public Table countByCategory()
countByCategory in interface CategoricalColumn<String>public StringColumn lead(int n)
Columnpublic StringColumn lag(int n)
ColumnFor example if you lag a column containing 2, 3, 4 by 1, you get a column containing NA, 2, 3
public StringColumn set(Selection rowSelection, String newValue)
Examples: myCatColumn.set(myCatColumn.isEqualTo("Cat"), "Dog"); // no more cats myCatColumn.set(myCatColumn.valueIsMissing(), "Fox"); // no more missing values
public StringColumn set(int rowIndex, String stringValue)
public int countUnique()
ColumncountUnique in interface Column<String>public List<String> top(int n)
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 columnpublic List<String> bottom(int n)
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 columnpublic boolean contains(String aString)
public Column<String> setMissing(int i)
setMissing in interface Column<String>public StringColumn addAll(List<String> stringValues)
stringValues - a list of valuespublic StringColumn appendCell(String object)
appendCell in interface Column<String>public StringColumn appendCell(String object, AbstractColumnParser<?> parser)
appendCell in interface Column<String>public it.unimi.dsi.fastutil.ints.IntComparator rowComparator()
rowComparator in interface Column<String>public boolean isEmpty()
Columnpublic Selection isEqualTo(String string)
isEqualTo in interface StringFilterspublic Selection isNotEqualTo(String string)
isNotEqualTo in interface StringFilterspublic List<BooleanColumn> getDummies()
BooleanColumnpublic StringColumn unique()
public DoubleColumn asDoubleColumn()
public StringColumn where(Selection selection)
public StringColumn copy()
Columnpublic StringColumn append(Column<String> column)
public int countMissing()
countMissing in interface Column<String>public StringColumn removeMissing()
removeMissing in interface Column<String>public int byteSize()
Columnpublic byte[] asBytes(int rowNumber)
public double getDouble(int i)
public double[] asDoubleArray()
public StringColumn append(String value)
public StringColumn appendObj(Object obj)
public Selection isIn(String... strings)
isIn in interface StringFilterspublic Selection isIn(Collection<String> strings)
isIn in interface StringFilterspublic Selection isNotIn(String... strings)
isNotIn in interface StringFilterspublic Selection isNotIn(Collection<String> strings)
isNotIn in interface StringFilterspublic int firstIndexOf(String value)
public int countOccurrences(String value)
public String[] asObjectArray()
asObjectArray in interface Column<String>public int compare(String o1, String o2)
compare in interface Comparator<String>public StringColumn setName(String name)
Columnpublic StringColumn filter(Predicate<? super String> test)
Columnpublic StringColumn subset(int[] rows)
public StringColumn sorted(Comparator<? super String> comp)
Columnpublic StringColumn map(Function<? super String,? extends String> fun)
Columnpublic StringColumn min(Column<String> other)
Columnpublic StringColumn max(Column<String> other)
Columnpublic StringColumn set(Selection condition, Column<String> other)
Columnpublic StringColumn first(int numRows)
public StringColumn last(int numRows)
public StringColumn inRange(int start, int end)
Columnpublic StringColumn sampleN(int n)
Columnpublic StringColumn sampleX(double proportion)
Columnpublic StringColumn asStringColumn()
asStringColumn in interface Column<String>asStringColumn in class AbstractColumn<String>public TextColumn asTextColumn()
Copyright © 2019. All rights reserved.