Class BayesNet
- java.lang.Object
-
- weka.datagenerators.DataGenerator
-
- weka.datagenerators.ClassificationGenerator
-
- weka.datagenerators.classifiers.classification.BayesNet
-
- All Implemented Interfaces:
java.io.Serializable
,OptionHandler
,Randomizable
,RevisionHandler
public class BayesNet extends ClassificationGenerator
Generates random instances based on a Bayes network.
Valid options are:-h Prints this help.
-o <file> The name of the output file, otherwise the generated data is printed to stdout.
-r <name> The name of the relation.
-d Whether to print debug informations.
-S The seed for random function (default 1)
-n <num> The number of examples to generate (default 100)
-A <num> The number of arcs to use. (default 20)
-N <num> The number of attributes to generate. (default 10)
-C <num> The cardinality of the attributes and the class. (default 2)
- Version:
- $Revision: 11753 $
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
BayesNetGenerator
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description BayesNet()
initializes the generator
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
cardinalityTipText()
Returns the tip text for this propertyInstances
defineDataFormat()
Initializes the format for the dataset produced.Instance
generateExample()
Generates one example of the dataset.Instances
generateExamples()
Generates all examples of the dataset.java.lang.String
generateFinished()
Generates a comment string that documentats the data generator.java.lang.String
generateStart()
Generates a comment string that documentates the data generator.int
getCardinality()
Gets the cardinality of the attributes (incl class attribute)int
getNumArcs()
Gets the number of arcs for the bayesian netint
getNumAttributes()
Gets the number of attributes that should be produced.int
getNumExamples()
Gets the number of examples, given by option.java.lang.String[]
getOptions()
Gets the current settings of the datagenerator.java.lang.String
getRevision()
Returns the revision string.int
getSeed()
Gets the random number seed.boolean
getSingleModeFlag()
Return if single mode is set for the given data generator mode depends on option setting and or generator type.java.lang.String
globalInfo()
Returns a string describing this data generator.java.util.Enumeration<Option>
listOptions()
Returns an enumeration describing the available options.static void
main(java.lang.String[] args)
Main method for executing this class.java.lang.String
numArcsTipText()
Returns the tip text for this propertyjava.lang.String
numAttributesTipText()
Returns the tip text for this propertyvoid
setCardinality(int value)
Sets the cardinality of the attributes (incl class attribute)void
setNumArcs(int value)
Sets the number of arcs for the bayesian netvoid
setNumAttributes(int numAttributes)
Sets the number of attributes the dataset should have.void
setNumExamples(int numExamples)
Sets the number of examples, given by option.void
setOptions(java.lang.String[] options)
Parses a list of options for this object.void
setSeed(int newSeed)
Sets the random number seed.-
Methods inherited from class weka.datagenerators.ClassificationGenerator
numExamplesTipText
-
Methods inherited from class weka.datagenerators.DataGenerator
debugTipText, defaultOutput, formatTipText, getDatasetFormat, getDebug, getNumExamplesAct, getOutput, getRandom, getRelationName, makeData, outputTipText, randomTipText, relationNameTipText, seedTipText, setDatasetFormat, setDebug, setOutput, setRandom, setRelationName
-
-
-
-
Method Detail
-
globalInfo
public java.lang.String globalInfo()
Returns a string describing this data generator.- Returns:
- a description of the data generator suitable for displaying in the explorer/experimenter gui
-
listOptions
public java.util.Enumeration<Option> listOptions()
Returns an enumeration describing the available options.- Specified by:
listOptions
in interfaceOptionHandler
- Overrides:
listOptions
in classClassificationGenerator
- Returns:
- an enumeration of all the available options
-
setOptions
public void setOptions(java.lang.String[] options) throws java.lang.Exception
Parses a list of options for this object. Valid options are:-h Prints this help.
-o <file> The name of the output file, otherwise the generated data is printed to stdout.
-r <name> The name of the relation.
-d Whether to print debug informations.
-S The seed for random function (default 1)
-n <num> The number of examples to generate (default 100)
-A <num> The number of arcs to use. (default 20)
-N <num> The number of attributes to generate. (default 10)
-C <num> The cardinality of the attributes and the class. (default 2)
- Specified by:
setOptions
in interfaceOptionHandler
- Overrides:
setOptions
in classClassificationGenerator
- Parameters:
options
- the list of options as an array of strings- Throws:
java.lang.Exception
- if an option is not supported
-
getOptions
public java.lang.String[] getOptions()
Gets the current settings of the datagenerator.- Specified by:
getOptions
in interfaceOptionHandler
- Overrides:
getOptions
in classClassificationGenerator
- Returns:
- an array of strings suitable for passing to setOptions
- See Also:
DataGenerator.removeBlacklist(String[])
-
setNumAttributes
public void setNumAttributes(int numAttributes)
Sets the number of attributes the dataset should have.- Parameters:
numAttributes
- the new number of attributes
-
getNumAttributes
public int getNumAttributes()
Gets the number of attributes that should be produced.- Returns:
- the number of attributes that should be produced
-
numAttributesTipText
public java.lang.String numAttributesTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setCardinality
public void setCardinality(int value)
Sets the cardinality of the attributes (incl class attribute)- Parameters:
value
- the cardinality
-
getCardinality
public int getCardinality()
Gets the cardinality of the attributes (incl class attribute)- Returns:
- the cardinality of the attributes
-
cardinalityTipText
public java.lang.String cardinalityTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setNumArcs
public void setNumArcs(int value)
Sets the number of arcs for the bayesian net- Parameters:
value
- the number of arcs
-
getNumArcs
public int getNumArcs()
Gets the number of arcs for the bayesian net- Returns:
- the number of arcs
-
numArcsTipText
public java.lang.String numArcsTipText()
Returns the tip text for this property- Returns:
- tip text for this property suitable for displaying in the explorer/experimenter gui
-
setNumExamples
public void setNumExamples(int numExamples)
Sets the number of examples, given by option.- Overrides:
setNumExamples
in classClassificationGenerator
- Parameters:
numExamples
- the new number of examples
-
getNumExamples
public int getNumExamples()
Gets the number of examples, given by option.- Overrides:
getNumExamples
in classClassificationGenerator
- Returns:
- the number of examples, given by option
-
getSeed
public int getSeed()
Gets the random number seed.- Specified by:
getSeed
in interfaceRandomizable
- Overrides:
getSeed
in classDataGenerator
- Returns:
- the random number seed.
-
setSeed
public void setSeed(int newSeed)
Sets the random number seed.- Specified by:
setSeed
in interfaceRandomizable
- Overrides:
setSeed
in classDataGenerator
- Parameters:
newSeed
- the new random number seed.
-
getSingleModeFlag
public boolean getSingleModeFlag() throws java.lang.Exception
Return if single mode is set for the given data generator mode depends on option setting and or generator type.- Specified by:
getSingleModeFlag
in classDataGenerator
- Returns:
- single mode flag
- Throws:
java.lang.Exception
- if mode is not set yet
-
defineDataFormat
public Instances defineDataFormat() throws java.lang.Exception
Initializes the format for the dataset produced. Must be called before the generateExample or generateExamples methods are used. Re-initializes the random number generator with the given seed.- Overrides:
defineDataFormat
in classDataGenerator
- Returns:
- the format for the dataset
- Throws:
java.lang.Exception
- if the generating of the format failed- See Also:
getSeed()
-
generateExample
public Instance generateExample() throws java.lang.Exception
Generates one example of the dataset.- Specified by:
generateExample
in classDataGenerator
- Returns:
- the generated example
- Throws:
java.lang.Exception
- if the format of the dataset is not yet definedjava.lang.Exception
- if the generator only works with generateExamples which means in non single mode
-
generateExamples
public Instances generateExamples() throws java.lang.Exception
Generates all examples of the dataset. Re-initializes the random number generator with the given seed, before generating instances.- Specified by:
generateExamples
in classDataGenerator
- Returns:
- the generated dataset
- Throws:
java.lang.Exception
- if the format of the dataset is not yet definedjava.lang.Exception
- if the generator only works with generateExample, which means in single mode- See Also:
getSeed()
-
generateStart
public java.lang.String generateStart()
Generates a comment string that documentates the data generator. By default this string is added at the beginning of the produced output as ARFF file type, next after the options.- Specified by:
generateStart
in classDataGenerator
- Returns:
- string contains info about the generated rules
-
generateFinished
public java.lang.String generateFinished() throws java.lang.Exception
Generates a comment string that documentats the data generator. By default this string is added at the end of theproduces output as ARFF file type.- Specified by:
generateFinished
in classDataGenerator
- Returns:
- string contains info about the generated rules
- Throws:
java.lang.Exception
- if the generating of the documentaion fails
-
getRevision
public java.lang.String getRevision()
Returns the revision string.- Returns:
- the revision
-
main
public static void main(java.lang.String[] args)
Main method for executing this class.- Parameters:
args
- should contain arguments for the data producer:
-
-