public IconKey(AttributeStats k1, AttributeStats k2, AttributeStats k3) { ks = new AttributeStats[3]; ks[0] = k1; ks[0] = k2; ks[0] = k3; }
public Buff(bool percent, int duration, AttributeStats attributes, CharStats charStats, CombatStats combatStats) { this.percent = percent; this.duration = duration; this.attributes = attributes; this.charStats = charStats; this.combatStats = combatStats; }
public AttributeStats(AttributeStats stats) { FieldInfo[] fields1 = this.GetType().GetFields(); FieldInfo[] fields2 = stats.GetType().GetFields(); for (int i = 0; i < fields1.Length; i++) { fields1[i].SetValue(this, (float)fields2[i].GetValue(stats)); } }
public static AttributeStats operator-(AttributeStats stats1, AttributeStats stats2) { AttributeStats stats = new AttributeStats(); FieldInfo[] fields = stats.GetType().GetFields(); FieldInfo[] fields1 = stats1.GetType().GetFields(); FieldInfo[] fields2 = stats2.GetType().GetFields(); for (int i = 0; i < fields.Length; i++) { fields[i].SetValue(stats, (int)fields1[i].GetValue(stats1) - (int)fields2[i].GetValue(stats2)); } return(stats); }
/// <summary> /// Generic axis initializer. /// </summary> /// <param name="stats"></param> /// <param name="dir"></param> public void Init(AttributeStats stats, AxisDirection dir = AxisDirection.Y) { Init(stats.name, dir); this.stats = stats; }
public IconKey2D(AttributeStats k1, AttributeStats k2) { ks = new AttributeStats[2]; ks[0] = k1; ks[0] = k2; }
public Set Load() { Set set = null; try { this.filestream = new FileStream(this.SourceFilePath, FileMode.Open); weka.core.converters.ArffLoader loader = new weka.core.converters.ArffLoader(); loader.set_FilePath(SourceFilePath); Instances instances = loader.getDataSet(); AttributeStats _ast = instances.attributeStats(0); List <Attribute> attributes = new List <Attribute>(); Attribute attrToAdd = null; //Obtener los atributos de la coleccion de elementos for (int i = 0; i < instances.numAttributes(); i++) { attrToAdd = null; if (instances.attribute(i).isNominal()) { List <object> l = new List <object>(); for (int j = 0; j < instances.attribute(i).numValues(); j++) { l.Add(instances.attribute(i).value(j)); } attrToAdd = new Attribute(instances.attribute(i).name(), l); attrToAdd.AttributeType = AttributeType.Nominal; attributes.Add(attrToAdd); } else if (instances.attribute(i).isNumeric()) { attrToAdd = new Attribute(instances.attribute(i).name(), null); attrToAdd.AttributeType = AttributeType.Numeric; attributes.Add(attrToAdd); } else if (instances.attribute(i).isString()) { attrToAdd = new Attribute(instances.attribute(i).name(), null); attrToAdd.AttributeType = AttributeType.String; attributes.Add(attrToAdd); } else if (instances.attribute(i).isDate()) { attrToAdd = new Attribute(instances.attribute(i).name(), null); attrToAdd.AttributeType = AttributeType.Date; attributes.Add(attrToAdd); } } Attributes attributes_values = new Attributes(attributes); List <Element> elements = new List <Element>(); //Darle los valores a cada elemento de la coleccion for (int i = 0; i < instances.numInstances(); i++) { List <object> realvalues = new List <object>(); for (int j = 0; j < instances.instance(i).numAttributes(); j++) { if (instances.instance(i).isMissing(j)) { realvalues.Add(null); } else if (instances.attribute(j).isNumeric()) { realvalues.Add(instances.instance(i).value(j)); } else if (instances.attribute(j).isNominal() || instances.attribute(j).isString()) { realvalues.Add(instances.instance(i).stringValue(j)); } else if (instances.attribute(j).isDate()) { realvalues.Add(DateTime.Parse(instances.instance(i).stringValue(j))); } } Element e = new Element(realvalues); e.Name = "E-" + i; e.Index = i; elements.Add(e); } set = new Set(instances.relationName(), elements, attributes_values); //Attributes[i].Missing = _missing; //Attributes[i].MissingPercent = 100 * _missing / ElementsCount; //Attributes[i].Distinct = _distinct; //Attributes[i].Unique = _unique; //Attributes[i].UniquePercent = 100 * _unique / ElementsCount; for (int i = 0; i < instances.numAttributes(); i++) { set.Attributes[i].Missing = instances.attributeStats(i).missingCount; set.Attributes[i].MissingPercent = 100 * set.Attributes[i].Missing / elements.Count; set.Attributes[i].Distinct = instances.attributeStats(i).distinctCount; set.Attributes[i].Unique = instances.attributeStats(i).uniqueCount; set.Attributes[i].UniquePercent = 100 * set.Attributes[i].Unique / elements.Count; } } catch (Exception ex) { throw new Exception(ex.Message); } finally { filestream.Close(); } return(set); }