Нахождение индекса Gini в массиве - C#
Формулировка задачи:
Здравствуйте! Помогите с массивом он основывается на datagridview. Нужно рассчитать индекс Gini(T) для каждого столбца кроме (Год, Т). Чтобы найти индекс Gini для первого столбца (nc) нужно рассчитать среднее значение и по нему вычислить:
Gini(для всех элементов > сред.зн.) = (7/10)*(1– (4/7)2 – (3/7)2) = 0,3428, где 4/7 это 4 элемента которые имеют значение "У" в столбце Т и 3/7 это 3 элемента которые имеют значение "N" в столбце Т.
Gini(для всех элементов < сред.зн.) = (3/10)*(1– (3/3)2 – (0/3)2) = 0, где 3/3 это 3 элемента которые имеют значение "У" в столбце Т и 0/3 это 0 элемента которые имеют значение "N" в столбце Т.
Gini(общий) = 0,3428 + 0 = 0,3428
И так нужно выполнить по каждому столбцу кроме (Год, Т) и найти наименьшее значение Gini(общий) который будит соответствовать определённому столбцу.
По найденному столбцу делим Массив 1 на Массив 1.1 (по элементам в получившемся столбце > сред.зн.) и Массив 1.2 (по элементам в получившемся столбце < сред.зн.)
И так же находим индекс Gini в получившихся Массивах и тд.
Названия столбцов с минимальным Gini(общий) должны записываться в Label.
Datagridview (Массив 1)
Год nc K Вп ЕГЭ Зв Кнс Бл Аб Nc Кнт nфс Ke T
2002 30 29 2734 1715 121 2,5 50 2461 870 2,83 720 2,38 Y
2003 30 31 2680 1854 138 2,3 53 2412 930 2,59 673 2,75 Y
2004 30 32 2344 1541 143 2 47 2110 960 2,2 695 2,22 Y
2005 30 34 2615 1573 69 1,3 36 2354 1020 2,3 655 2,4 N
2006 30 33 2313 1278 94 1,4 40 2082 990 2,1 680 1,88 Y
2007 40 32 2220 1232 83 1 30 1998 1280 1,6 610 2,02 N
2008 36 31 1936 960 99 1,3 33 1742 1116 1,6 485 1,98 N
2009 25 31 1594 483 114 1 34 1435 775 1,9 330 1,46 N
2010 25 30 1214 568 154 1 41 1093 750 1,5 310 1,83 N
2011 20 31 908 419 128 1 46 817 620 1,3 265 1,53 N
Массив 1.1
Год nc K Вп ЕГЭ Зв Кнс Бл Аб Nc Кнт nфс Ke T
2002 30 29 2734 1715 121 2,5 50 2461 870 2,83 720 2,38 Y
2003 30 31 2680 1854 138 2,3 53 2412 930 2,59 673 2,75 Y
2004 30 32 2344 1541 143 2 47 2110 960 2,2 695 2,22 Y
2005 30 34 2615 1573 69 1,3 36 2354 1020 2,3 655 2,4 N
2006 30 33 2313 1278 94 1,4 40 2082 990 2,1 680 1,88 Y
Массив 1.2
Год nc K Вп ЕГЭ Зв Кнс Бл Аб Nc Кнт nфс Ke T
2007 40 32 2220 1232 83 1 30 1998 1280 1,6 610 2,02 N
2008 36 31 1936 960 99 1,3 33 1742 1116 1,6 485 1,98 N
2009 25 31 1594 483 114 1 34 1435 775 1,9 330 1,46 N
2010 25 30 1214 568 154 1 41 1093 750 1,5 310 1,83 N
2011 20 31 908 419 128 1 46 817 620 1,3 265 1,53 N
Решение задачи: «Нахождение индекса Gini в массиве»
textual
Листинг программы
int[] mas= new int[4] { 001, 002, 0003, 004 }; for (int i = 0; i < mas.Length; i++) { textBox1.Text = mas[i].ToString(); //вывод из массива mas[i] = Convert.ToInt32(textBox1.Text[i]); // ввод в масив }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д