from pyspark.sql import SQLContext sqlContext = SQLContext(sc) Reading csv with customSchema from pyspark.sql.types import * customSchema = StructType([ StructField("id", IntegerType(), True), StructField("bikes_available", IntegerType(), True), StructField("docks_available", IntegerType(), True), StructField("time", TimestampType(), True) ]) path = «file:///home/sergey/Py_SparkDataFrame_edx_CS105_CS110_CS120/data/201408_status_data.csv» df = sqlContext.read.csv(path, header=True, schema=customSchema) df.show(5) +—+—————+—————+———————+ | id|bikes_available|docks_available| time| +—+—————+—————+———————+ | 2| 12| 15|2014-03-01 00:00:…| | 2| 12| 15|2014-03-01 00:01:…|…

Файловая система HDFS (Hadoop Distributed File System) существует независимо от файловой системы хоста, работающего как правило, на базе *nix ОС. Тем не менее, набор команд для управления HDFS очень похож на стандартный набор командной строки *nix OS, регламентируемый POSIX стандартом ( ls, mkdir, rm, cp, du, df ) и может быть сгруппирован следующим образом: Просмотр…

1. Введение в “Uplift” моделирование Uplift моделирование – прогнозный метод машинного обучения, служащий для определения величины эффекта воздействия на потребителя. Uplift моделирование применяется при: планировании промо акций (с целью увеличения вероятности совершения покупки) планировании акций, направленных на снижение оттока клиентов определении ценовой эластичности клиента определении оптимального канала маркетинговых коммуникаций upselling & cross-selling (продажа дополнительных продуктов…

Одно из возможных применений алгоритма “apriori” – выдача рекомендаций. Для тех кто знаком с методами машинного обучения первым кандидатом для выполнения этой задачи будет метод recommend(). Однако, в пакете arules данный метод используется для выдачи рекомендаций по принадлежности к определенному кластеру, а не по следующей наиболее вероятной покупке. Ключевой функцией для выдачи рекомендаций по покупке…

Иногда при анализе больших баз данных возникает необходимость поработать с выборкой. Данная статья показывает, каким образом можно сделать выборку в arules, а также показывает некоторые приемы анализа (сравненения) выборки и популяции. 1. Выборка Для того, чтобы сделать выборку, в arules существует функция sample: library(arules) data(«Adult») set.seed(123) AdultSample <- sample(Adult, 10000, replace =T) В данном случае…

1. Introduction. Arules, open source package available from The Comprehensive R Archive Network, is a powerful tool-set for mining associative rules in transactional databases. The most common use of arules package is market basket analysis in marketing and retail; though, there were successful attempts applying arules to medical problems, crime prevention, and book recommendations. In…

Постановка задачи Допустим мы хотим сформировать 8 профилей клиентов по их покупкам при помощи пакета arules на датасете Groceries: library(arules) library("cluster") data("Groceries") Кластеризация Т.к. датасет достаточно большой, проведем кластеризацию в 2 этапа: Сначала определим центроиды на выборке Затем предскажем лэйблы для всего датасета Этап 1: Кластеризация на выборке set.seed(1234) s <- sample(Groceries, 2000) d <-…

Иногда файл с данными бывает слишком большим: для простого тестирования того или иного алгоритма достаточно небольшой части данных, что сэкономит время, вычислительные ресурсы, и ускорит создание рабочего алгоритма. В таком случае можно прибегнуть к простой конструкции rand() < fraction , которая будет работать как в SQL, так и во многих других хранилищах данных. Для выборки…

  Появление ошибки при выполнении скрипта R может привести к тому, что скрипт может прекратить выполнение, так и не дойдя до конца программы. Для того, чтобы предотвратить такое нежелательное поведение в R существует оператор tryCatch (и его более «продвинутый» близнец — функция try):   inputs <- list(1, 2, 4, -5, ‘oops’, 0, 10) output <-…

  Попробуем рекурсивное вычисление чисел Фибоначчи:   def fib(n): if n<2: return n return fib(n-1)+fib(n-2) %timeit fib(20) 100 loops, best of 3: 5.53 ms per loop   Процесс можно ускорить в ~3 раза если выполнить данную операцию в Cython:   %load_ext Cython   %%cython def fib_cython(n): if n<2: return n return fib_cython(n-1)+fib_cython(n-2)   %timeit fib_cython(20)…

© 2014 In R we trust.
Top
Follow us: