0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 package org.apache.spark.ml.attribute;
0019
0020 import org.junit.Assert;
0021 import org.junit.Test;
0022
0023 public class JavaAttributeGroupSuite {
0024
0025 @Test
0026 public void testAttributeGroup() {
0027 Attribute[] attrs = new Attribute[]{
0028 NumericAttribute.defaultAttr(),
0029 NominalAttribute.defaultAttr(),
0030 BinaryAttribute.defaultAttr().withIndex(0),
0031 NumericAttribute.defaultAttr().withName("age").withSparsity(0.8),
0032 NominalAttribute.defaultAttr().withName("size").withValues("small", "medium", "large"),
0033 BinaryAttribute.defaultAttr().withName("clicked").withValues("no", "yes"),
0034 NumericAttribute.defaultAttr(),
0035 NumericAttribute.defaultAttr()
0036 };
0037 AttributeGroup group = new AttributeGroup("user", attrs);
0038 Assert.assertEquals(8, group.size());
0039 Assert.assertEquals("user", group.name());
0040 Assert.assertEquals(NumericAttribute.defaultAttr().withIndex(0), group.getAttr(0));
0041 Assert.assertEquals(3, group.indexOf("age"));
0042 Assert.assertFalse(group.hasAttr("abc"));
0043 Assert.assertEquals(group, AttributeGroup.fromStructField(group.toStructField()));
0044 }
0045 }