Example #1
0
        //public static double entropy(double inp)
        //{

        //    return (-(inp * Math.Log(inp, 2)) - ((1 - inp) * Math.Log((1 - inp), 2)));
        //}
        //public static double entropy(disease d,symptom s)
        //{
        //    return (d.py) * (d.symptoms.Contains(s.Number)?(entropy((double)1/d.symptoms.Count)):0) + (d.pn) * (d.symptoms.Contains(s.Number) ? entropy(((double)(65-d.symptoms.Count) / (65))) : 0);
        //}
        //public static double InformationGain(symptom s,disease d)
        //{
        //    return entropy(s.py) - entropy(d,s);
        //}
        public static double pck(disease d, symptom s, bool b)
        {
            if (b)
            {
                if (s.Disease.Contains(d.Num))
                {
                    return((double)1 / s.Disease.Count);
                }
                else
                {
                    return(0);
                }
            }
            else
            {
                if (s.Disease.Contains(d.Num))
                {
                    return(0);
                }
                else
                {
                    return((double)1 / (9 - s.Disease.Count));
                }
            }
        }
Example #2
0
 public data(int i, object obj)
 {
     if (i == 0)
     {
         ic = null;
         d  = null;
         s  = (symptom)obj;
     }
     else if (i == 1)
     {
         ic = null;
         s  = null;
         d  = (disease)obj;
     }
     else if (i == 2)
     {
         ic = (ic)obj;
         s  = null;
         d  = null;
     }
     else
     {
         ic = null;
         s  = null;
         d  = null;
     }
 }
Example #3
0
 public ic CastToIc(disease d)
 {
     foreach (ic item in sl)
     {
         // Console.WriteLine(item.Name+"    "+d.Name);
         if (item.Name.Length == d.Name.Length)
         {
             return(item);
         }
     }
     Console.WriteLine("null");
     return(null);
 }