assertEquals(Array.of(AUG_26_1975, JAN_08_2006, OCT_26_1947), dateOfBirthColumn.getValues()); assertEquals("Category", GENDER.getType().getDescription()); assertEquals(GENDER, df.getColumnId(5, ColumnType.CATEGORY)); assertEquals(genderColumn, df.getColumn(GENDER));
@Test public void demo() { // Type-safe column identifiers final StringColumnId NAME = StringColumnId.of("Name"); final CategoryColumnId COLOR = CategoryColumnId.of("Color"); final DoubleColumnId SERVING_SIZE = DoubleColumnId.of("Serving Size (g)"); // Convenient column creation StringColumn nameColumn = StringColumn.ofAll(NAME, "Banana", "Blueberry", "Lemon", "Apple"); CategoryColumn colorColumn = CategoryColumn.ofAll(COLOR, "Yellow", "Blue", "Yellow", "Green"); DoubleColumn servingSizeColumn = DoubleColumn.ofAll(SERVING_SIZE, 118, 148, 83, 182); // Grouping columns into a data frame DataFrame dataFrame = DataFrame.ofAll(nameColumn, colorColumn, servingSizeColumn); // Typed random access to individual values (based on rowIndex / columnId) String lemon = dataFrame.getValueAt(2, NAME); double appleServingSize = dataFrame.getValueAt(3, SERVING_SIZE); // Typed stream-based access to all values DoubleStream servingSizes = servingSizeColumn.valueStream(); double maxServingSize = servingSizes.summaryStatistics().getMax(); // Smart column implementations Set<String> colors = colorColumn.getCategories(); }
public static CategoryColumnId of(String name) { return new CategoryColumnId(name); }
public static CategoryColumnId of(String name) { return new CategoryColumnId(name); }
@Test public void createValues() { CategoryColumnId id = CategoryColumnId.of("test"); Array<String> values = Array.ofAll(this.wordGenerator.randomWords(100)); CategoryColumn column = CategoryColumn.builder(id).addAll(values).build(); assertEquals(93, column.getCategories().length()); assertEquals(values, column.valueStream().toArray()); }