Exemplo n.º 1
0
        public string account(list b)
        {
            int i = -1;
            int coincide = 0;

            // проверяем по всем векторам
            for (int j = 0; j < vectors.Length; j++)
            {
                int max = 0;

                //каждое ключевое слово для новой статьи ищем в базовых векторах
                foreach (string k in b.analiz_vector.Keys)
                {
                    if (vectors[j].values.ContainsKey(k))
                        max++;
                }
                if (max > coincide)
                {
                    //запоминаем количество совпавших с начальным вектором слов
                    coincide = max;
                    //и категория(тема) вектора для которой было это сравнение
                    i = j;
                }
            }
            //если совпадение ключевых слов было найдено, то выводим результат - тема вектора
            if (i > -1)
                return vectors[i].name;
            else
                return "Error";
        }
Exemplo n.º 2
0
 public void add(list b)
 {
     Dictionary<string, double> add_list = b.analiz_vector;
     if (values == null)
     {
         values = add_list;
     }
     else
     {
         foreach (string a in add_list.Keys)
         {
             if (values.ContainsKey(a))
             {
                 values[a] = (values[a] + add_list[a]) / 2;
             }
             else
             {
                 values.Add(a, add_list[a]);
             }
         }
     }
 }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            list list1 = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d11.txt");
            list list2 = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d21.txt");
            list list3 = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d31.txt");
            vector v1 = new vector("animalworld");
            v1.add(list1);
            v1.add(list2);
            v1.add(list3);

            list list1b = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d12.txt");
            list list2a = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d22.txt");
            list list3a = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d32.txt");

            vector v2 = new vector("football");
            v2.add(list1b);
            v2.add(list2a);
            v2.add(list3a);

            list d1 = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d1.txt");
            list d2 = new list(@"D:\FIT\Програмування\2\prog\kNN\posts\d2.txt");

            analyzer analyzer = new analyzer(new vector[] { v1, v2 });
            Console.WriteLine(analyzer.account(d1));
            Console.WriteLine(analyzer.account(d2));

            Console.ReadLine();
        }