The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here
How to iterate over all the attributes in an ExampleSet
How can I iterate over all attributes in an ExampleSet, including special attributes and label?
This code will print only the thirth attribute (which was not made to be special). How can I print also values of the special attributes?
Thanks in advance.
Radim
With the setSpecial() method I want to mark these attributes to be not used for training.
public class AttributeTest {
public static void main(String[] args) {
// construct attribute set
Attribute[] attributes = new Attribute[3];
attributes[0] = AttributeFactory.createAttribute(
"FileName", Ontology.STRING);
attributes[1] = AttributeFactory.createAttribute(
"Xposition", Ontology.INTEGER);
attributes[2] = AttributeFactory.createAttribute(
"Yposition", Ontology.INTEGER);
MemoryExampleTable table = new MemoryExampleTable(attributes);
char decimalSeperator = '.';
DataRowFactory ROW_FACTORY = new DataRowFactory(0, decimalSeperator);
String[] strings = new String[3];
strings[0] = "FILE";
strings[1] = Integer.toString(11);
strings[2] = Integer.toString(22);
// make and add row
DataRow row = ROW_FACTORY.create(strings, attributes);
table.addDataRow(row);
ExampleSet es = table.createExampleSet();
es.getAttributes().setSpecialAttribute(attributes[0],
"IGNORED1");
es.getAttributes().setSpecialAttribute(attributes[1],
"IGNORED2");
for (Attribute a : es.getAttributes()) {
System.out.println(a.getName());
}
System.out.println(es.getAttributes().getSpecial("clusterFNATT"));
}
}
This code will print only the thirth attribute (which was not made to be special). How can I print also values of the special attributes?
Thanks in advance.
Radim
Tagged:
0
Answers
exampleSet.getAttributes().allAttributes();
returns the iterator you are looking for,
Cheers,
Simon
For anyone dealing with the problem, let me summarize the content of this thread:
To iterate only over regular attributes: To iterate over all attributes (including special attributes, label, etc.): where ef is of type ExampleSet.