- Определите цель. Например, вы хотите, чтобы посетители сайта покупали больше. Вокруг этой точки и следует формировать гипотезы, именно на неё будут влиять результаты исследования;
- Предполагайте. В свободной форме сделайте предположения о том, что влияет на выбранное для анализа явление. Например: «Число покупок зависит от внешнего вида карточек товаров». Избегайте суждений в духе «это и так понятно». В аналитике нет ничего очевидного — всё нужно сначала доказать;
- Уточните гипотезу. Здесь два пути: можно постараться сделать гипотезу максимально точной с самого начала либо сразу приступить к проверке. В ходе работы вы обязательно сформируете новые, уточняющие предположения. Например, гипотеза «Число покупок зависит от внешнего вида карточек товаров» через некоторое время может превратиться в такую: «Возможность предварительного просмотра в карточке товара влияет на рост числа покупок».
- Действуйте. В хорошей гипотезе всегда есть не только цель, но и действие: «Если добавить в карточки товаров возможность предварительного просмотра, это увеличит число покупок». При формулировании гипотез один из этих элементов часто теряют. Например, вы делаете редизайн сайта. Но зачем? Есть действие, но нет цели. Или хотите увеличить продажи, но не знаете как. Цель есть, действия нет.
Data Science: Первое знакомство
Чтение csv-таблиц:
import pandas data = pandas.read_csv('polomki.csv', index_col='Магазин') print(data)
Работа с колонками:
import pandas data = pandas.read_csv('polomki.csv', index_col='Магазин') data['Неделя 14'] = data['Неделя 14'] * 100 print(data)
Вывод тепловой карты:
import pandas import seaborn data = pandas.read_csv('polomki.csv', index_col='Магазин') data['Неделя 14'] = data['Неделя 14'] * 100 seaborn.heatmap(data)
Обработка аргументов в bash
#!/bin/bash while [[ "$#" -gt 0 ]]; do case $1 in -t|--target) target="$2"; shift ;; -u|--uglify) uglify=1 ;; *) echo "Unknown parameter passed: $1"; exit 1 ;; esac shift done echo "Where to deploy: $target" echo "Should uglify : $uglify" Usage: ./deploy.sh -t dev -u # OR: ./deploy.sh --target dev --uglify
Простой инсталлятор для Linux средствами bash
Если вам приходилось ставить JDK на вашу Linux-машину, то вы знакомы с этим способом развёртывания приложения. И, если теперь ваша замечательная новая программа должна отправиться к благодарным пользователям, то почему бы не облегчить им жизнь с помощью простого «инсталлятора»? Вот увидите, клиенты это оценят.
Как это выглядит?
Предельно просто. Пользователь загружает .sh файл и запускает его. Скрипт не просто создаёт все директории и т.п., а ещё и извлекает «из себя» файлы приложения и раскладывает их куда нужно.
Утилита для проверки наличия подключения к PostgreSQL
sudo apt-get install postgresql-client pg_isready -h localhost -p 5432
Дополнительные параметры тут https://www.postgresql.org/docs/12/app-pg-isready.html
PostgreSQL 11: Мастерство разработки
PostgreSQL гарантирует, что столбец id будет уникальным, но при этом в индексе будет храниться дополнительное поле, так что при запросе обоих столбцов будет произведен просмотр индекса.
CREATE UNIQUE INDEX some_name ON person USING btree (id) INCLUDE (name);
Если вы хотите получить «настоящее время», то пользуйтесь функцией clock_timestamp(), а не now().
Читать далее «PostgreSQL 11: Мастерство разработки»Создание собственного Youtube сайта
В сложившейся ситуации на март 2022 года я решил найти замену Youtube. При простом поиске в интернете я нашел следующее ПО PeerTube.
Все инструкция находиться по адресу https://docs.joinpeertube.org/install-any-os?id=installation
Примечание: установку делал на Ubuntu 20.04
Видео ролик установки https://www.youtube.com/watch?v=62_fQwp3KTU
Добавление, разметка, монтирование нового жесткого диска в ubuntu
Понадобилось мне подключить к системе ubuntu 14.04 новый жесткий диск. Разобрал как это делается, с чем и хочу поделится с вами и для себя будет памятка.
У меня система развернута на сервере ESXi, к профилю виртуальной машины я добавил новых жесткий диск размером 500Gb. Запускаю систему и само собой она знать не знает чего мы там к ней подключили и как с ним работать.
Первым делом посмотрим какие вообще у нас устройства подключены
sudo fdisk -l
Видим что диск определился, но на нем отсутствует таблица разделов.
Читать далее «Добавление, разметка, монтирование нового жесткого диска в ubuntu»SWIFT: создание второго потока
var workItem: DispatchWorkItem? = nil ... override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) let indicator = activityIndicator() indicator.startAnimating() workItem = DispatchWorkItem { // долгая команда DispatchQueue.main.async { indicator.stopAnimating() indicator.hidesWhenStopped = true } } DispatchQueue.global(qos: .utility).async(execute: workItem!) } ... override func viewDidDisappear(_ animated: Bool) { if let workItem = workItem { workItem.cancel() self.workItem = nil } }
Pentaho: ошибка вида gc overhead limit exceeded
Предыстория: заказчик жалуется, что через какое-то время построение отчетов становиться не доступно (построение Excel с большим количеством строк).
По нагрузке видно, что все ядра на сервере построения отчетов загружены на полную, но при этом нагрузки на СУБД нет.
Читать далее «Pentaho: ошибка вида gc overhead limit exceeded»