Про паттерны в данных

Основная задача Data Mining — найти паттерны в данных и сделать на их основе предсказание. В первой лекции курса «Learning From Data» Yaser Abu-Mostafa предлагает слушателям интересную задачку (слайд 19), иллюстрирующую практическую проблему.

Нужно предсказать значение (+1 или -1) бинарной переменной f для квадратика под горизонтальной чертой на основании тренировочных данных над чертой.

Аналог из реальной жизни можно придумать такой. Допустим каждый клиент обладает 9-ю бинарными признаками. Тогда каждого клиента можно представить таким вот квадратиком. Нужно предсказать, стоит ли ему выдавать кредит.
Правильный ответ можно узнать из самой лекции, либо написать Ваше решение в комментариях, либо я сам попозже напишу его тут же, если никто ничего не напишет )
Задача не столько сложная, сколько интересная, поскольку иллюстрирует реальную практическую проблему встречающуюся при анализе данных.

Чтение SAS data sets из R

Допустим Вы подготовили данные для анализа в SAS и хотите воспользоваться богатыми возможностями предоставляемыми многочисленными R-библиотеками. Причин на это может быть несколько.
  • Например у вас нет лицензии на нужный продукт (IML, Miner, и т.д.)
  • В SAS ещё нет соответствующего метода/алгоритма/функционала (удобный синтаксис для операций над матрицами, какие-то новые методы изобретенные недавно, графические возможности (ggplot2), парсинг различных форматов данных, подготовка отчетов и презентаций (knitr) и т.д,)
  • Вы хотите иметь доступ к source code для того что бы разобраться детально как работает алгоритм и, возможно, изменить его под свои нужды
Последний пункт, на мой взгляд, особенно важен. Ну и конечно ни один продукт/язык программирования не решает все задачи одинаково хорошо, поэтому иногда имеет смысл использовать сильные стороны имеющихся в распоряжении интсрументов. А R — интсрумент мало того что хороший, но еще и бесплатный.
Со своей стороны SAS предоставляет интерфейс для вызова R функций через IML:
Calling Functions in the R Language. Но его у Вас может не быть, поэтому можно экспортировать данные в CSV формат и потом считать их в R. Более быстрый и удобный способ — воспользоваться библиотекой haven. Недавно вышла новая версия этого пакета, о чем автор написал на сайте r-bloggers.
Пример чтения:
# Установка package:
install.packages("haven")
# Загрузка библиотеки в R
library(haven)
Описание функций пакета можно найти на сайте CRAN в pdf файле.
Пример входных данных можно скачать из GitHub репозитория: hadley.sas7bdat. Сохранив файл локально, считываем его командой:
data = read_sas("D:/_tmp/hadley.sas7bdat")
На выходе получаем data.frame структуру данных с именованными переменными:

Что нужно занать при создании макроперепенных?

Всем привет!
В сегодняшнем уроке поговорим о том как создавать макропеременные, а именно:
  • Чем отличается CALL SYMPUT от %LET ?
  • Как создавать в макросе глобальные макропеременные?
  • Что такое вложенность локальных макропеременных?
На все вышеперечисленные вопросы ответы вы найдете в приведенном ниже видео с примерами.
Хочу привести картинку к третьему вопросу со вложенностями локальных переменных:
Источник для данного урока вы можете посмотреть тут.
Если урок Вам понравился, пусть его увидит больше людей – сделайте репост в фейсбуке, вконтакте или google+ , а также жду Ваших комментариев.
С уважением,
Николай.