Полная версия

Главная arrow Информатика arrow ВВЕДЕНИЕ В АНАЛИЗ ДАННЫХ

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>

Работа с подмножествами объектов и признаков

Имея массив агг размера 100 х 8, можно легко создать массив, включающий, скажем, только три признака из 8, например, "Возраст”, "Дети" and “Оценка по программированию”. Для этого надо создать массив индексов этих переменных, скажем, 4, 5 и 7, соответственно:

»ii=[4 5 7]

% двоеточие в конце отсутствует, чтобы массив и появился на экране;

Если имена восьми признаков хранятся в «ячеечном» файле Ь, то команды для формирования файла всех объектов с редуцированным множеством признаков могут иметь вид:

» newa=arr(:,ii); % newa — новый массив числовых данных » newb=b(ii);

% newb — новое множество названий признаков: оно определяется через круглые, не фигурные % скобки, несмотря на то, что и Ь, и newb имеют структуру ячейки, а не массива

Аналогично определяются подмножества объектов. Если, например, нужен файл данных только о тех студентах, которые получили 60% или выше на экзамене по Программированию, следует сначала найти множество индексов этих студентов с помощью команды “find”:

»jj=find(arr(:,7)>=60);

% jj — множество объектов, определенных предикатом операции find()

% агг(:,7) это 7-й столбец массива агг; он соответствует признаку «оценка но программированию». Теперь можно применить “агг” к “jj”:

» al=arr(jj,:); % данные о всех признаках на объектах, попавших в j j

Размеры массива данных можно определить с помощью команды »size(al)

Если в ответ появится

55 8,

то, значит, массив а1 состоит из 55 строк и 8 столбцов. При необходимости иметь переменные для этих значений, команда слегка меняется:

»[n,m]=size(al)

Это помещает 55 в п, а 8 в т.

Теперь можно обратиться к проблеме формирования файла названий признаков. Сначала надо получить файл структуры ячейка для всех признаков. Они составляют конец первой строки ячейки tt, получаемый удалением первого названия “Признак”, как видно из распечатки tt, приведенной выше. Таким образом, команда

Теперь можно показать, как преобразовать в МатЛабе «грязные» данные, полученные на предыдущей странице с помощью операции xlsread из Excel файла. В частности, получен файл пп с бессмысленным третьим столбцом. Чтобы его удалить, мы сначала определяем число столбцов

»[rnn,cnn]=size(nn);

% т.с. число столбцов — СШ1

Потом удаляем столбец 3 из множества всех столбцов с помощью операции теоретико-множественного вычитания множеств:

» w=setdiff([l:cnn],3);

% операция setdiff(x,y) удаляет из х все те элементы массива у, которые входят в х % 11 :спп] — это массив всех натуральных чисел от 1 доспи включительно, например, [1:4]=[1 2 3 4]

Операция

» nnr=nn(:,vv);

сохраняет весь пп, за исключением столбца 3, в массив ппг:

  • 35 0 94
  • 28 2 67

ппг = 27 1 85 .

  • 28 0 48
  • 25 0 87

»fe=tt( 1,2:5);

Порождает ячейку fe размера 1x4, состоящую из названий 4 признаков. Теперь можно удалить признак 3 — применением fe к полученному выше массиву vv:

»fer=fe(w);

Ячейка fer включает строки ‘Возраст’, ‘Число детей’, ‘Оценка’, индексированные числами 1, 2 и 3, и соответствующие столбцам массива ппг.

Многие другие операции МатЛаба вводятся в основном тексте, особенно в проектах, рабочих примерах и заданиях.

 
<<   СОДЕРЖАНИЕ ПОСМОТРЕТЬ ОРИГИНАЛ   >>