Don't wanna be here? Send us removal request.
Text
Память, очень интересная.
Память, нынче, это та пустота, что... кому-то мешает, кому-то помогает.
Есть такие ебанутые привычки удалять переписки, после котоырых кто-то уже не знает оттенка стен, который выбрал раньше.
Есть память о людях, которая не отпускает
Есть память о хороших моментах
но смысл в этих моментах, если все участники уже довольно не хорошие..
я вот
не знаю что делать
не знаю с кем делать
и сейчас
ждать не вариант
не впервой.
0 notes
Text
В конце концов, поною здесь.
Сегодня, когда мне уже 39. Когда я очень устал от всего что творится вокруг меня, именно меня. Сегодня хочется просто лечь в любом месте и смотреть в небо. пусть снег и дождь просто накрывают меня. я очень устал. Мне 39, а я всё ещё не научился жить. Мне 39, а для меня всё ещё не наступило 20. А если вспомнить, если подумать из чего состояло это время. Ведь я где-то же был.
И я был.
Я был мечтателем без цели в жизни. Я готов был заниматься любой фигней, лишь бы она заполнила ту пустоту, что постоянно была внутри.
не вышло.
Сейчас я просто делаю ответственную работу и стараюсь это делать ответственно, т.к. чтобы вернуться к мечтательности, я должен вернуться и поставить запрет на что-то большее.
Я должен остановиться.
Но я же не остановился последние 20 лет. Я двигался. Медленно, но двигался.
Мне 39. 2024й год. Это очень странно, что мне удалось найти и первую любовь и замену это любви. Всё сразу и...
И никому это нахуй не надо. Это не надо было никому изначально. Это были параноидальные мысли тяжёлого периода.
Был 2002й год, Было тяжело в жизни Был 2002й год и я влюбился.
Это сейчас я понимаю, что я влюбился в него, потому что я не могу стать таким как он.
Это сейчас я понимаю, что я не мог представить какой-то интимной близости с ним, потому что он был целью поиска всех этих лет.
Мы один раз целовались и этот момент не забыть и не перекрыть....
Прошло 22 года. Я нашёл тебя. Сейчас, я понимаю, что найду тебя снова.
Я для тебя никто.
Ты для меня всё что двигало вперед. Всё что заставляло жить. Как бы это не звучало.
1 note
·
View note
Text
衣服のたたみ方 (^o^) ナルホドー Folding clothes
(karibsailorさんのImgur)
14K notes
·
View notes
Text
И попробовал я поиграть в сетевые игры.
Ну это норм?:
- купил по рекомендации знакомого: подключился к серваку, игра начинается в тюремной камере. 30 минут ожидания какой-то неведомой амнистии. Удовольствие, радость. Всё что 30 минут делал - пользовался санузлом.
- купил по собственной инициативе:
- - ходим собираем улики. - - ползаем, собираем запчасти.
- - прохожу квесты, ибо игра новая и мозгоебы до неё ещё не дошли.
👍
12 notes
·
View notes
Text
я сделал это. Я направил последнее задание по hadoop. Теперь резюме, которое и без того боюсь обновлять, можно обновлять. Ещё пара курсов и пойду на английский и вождение. Всё будет супер. А пока, стало неплохо.
1 note
·
View note
Text
youtube
Slow decay bodies — what do I care And flattering speeches of envy Whirlpools of problems — what do I care If I realized that I am eternal.
4 notes
·
View notes
Text
-- последняяч дата в базе --SELECT MAX(o_date) FROM test.orders_20190822 o --** 31.12.2017 /* по задаче исходных данных было недостаточно https://habr.com/ru/company/unisender/blog/131225/ */ -- 1. Определяем критерии для каждой буквы R, F, M (т.е. к примеру, R – 3 для клиентов, которые покупали <= 30 дней от последней даты в базе, -- R – 2 для клиентов, которые покупали > 30 и менее 60 дней от последней даты в базе и т.д.) -- 2. Для каждого пользователя получаем набор из 3 цифр (от 111 до 333, где 333 – самые классные пользователи) -- 3. Вводим группировку, к примеру, 333 и 233 – это Vip, 1XX – это Lost, остальные Regular ( можете ввести боле глубокую сегментацию) -- 4. Для каждой группы из п. 3 находим кол-во пользователей, кот. попали в них и % товарооборота, которое они сделали на эти 2 года. -- 5. Проверяем, что общее кол-во пользователей бьется с суммой кол-во пользователей по группам из п. 3 (если у вас есть логические ошибки в создании групп, у вас не собьются цифры). То же самое делаем и по деньгам. -- 6. Результаты присылаем. WITH R AS (SELECT o.user_id, MAX(CASE WHEN (SELECT MAX(o_date) FROM test.orders_20190822) - o_date <= 30 THEN 3 WHEN (SELECT MAX(o_date) FROM test.orders_20190822) - o_date BETWEEN 31 AND 60 THEN 2 --WHEN (SELECT MAX(o_date) FROM test.orders_20190822) - o_date BETWEEN 61 AND 90 THEN 1 ELSE 1 END)::varchar(1) AS r FROM test.orders_20190822 o GROUP BY user_id), F AS (SELECT o.user_id, MAX(CASE WHEN o.price >= 1500000 THEN 3 WHEN o.price >= 500000 THEN 2 ELSE 1 END)::varchar(1) AS f FROM (SELECT co.user_id user_id, SUM(co.price) price FROM test.orders_20190822 co GROUP BY user_id) AS o GROUP BY user_id), M AS (SELECT o.user_id, MAX(CASE WHEN o.id_o >= 1000 THEN 3 WHEN o.id_o >= 300 THEN 2 ELSE 1 END)::varchar(1) AS m FROM (SELECT co.user_id user_id, COUNT(co.id_o) id_o FROM test.orders_20190822 co GROUP BY user_id) AS o GROUP BY user_id), RFM AS ( SELECT o.*, R.r||F.f||M.m rfm FROM test.orders_20190822 o INNER JOIN R ON o.user_id = R.user_id INNER JOIN F ON o.user_id = F.user_id INNER JOIN M ON o.user_id = M.user_id) SELECT RFM.rfm, SUM(RFM.price)/(SELECT SUM(so.price) FROM test.orders_20190822 so) FROM RFM GROUP BY RFM.rfm ORDER BY 1 DESC
4 notes
·
View notes
Text
-- Основа для сегментирования, т.к. прогноз на 05.2017, ограничение по дате WITH SGMNT (u_id, o_sum, o_cnt, d_min, d_max) AS (SELECT o.user_id, SUM(o.price) s, -- сумма всех заказов COUNT(o.price) c, -- количество всех заказов MIN(o.o_date) mn, -- первая покупка MAX(o.o_date) mx -- последняя покупка FROM test.orders_20190822 o WHERE o.o_date < '01.05.2017' GROUP BY o.user_id ORDER BY s DESC, c DESC) -- Получение количества дней оцениваемого периода, иначе с цифрами проблемы, т.к. ежедневно не покупали, а подсчёт по месяцам SELECT COUNT(DISTINCT o.o_date) FROM test.orders_20190822 o WHERE o.o_date < '01.05.2017'; -- 1. Группа часто покупающ��х (3 и более покупок) и которые последний раз покупали не так давно. -- Считаем сколько денег оформленного заказа приходится на 1 день. Умножаем на 30. /*по клиентам*/ SELECT u_id, o_sum/o_cnt/486*30 AS gr1 FROM SGMNT WHERE o_cnt >= 3 AND d_max >= '01.04.2017'; /*полностью по группе*/ SELECT SUM(o_sum/o_cnt/486*30) AS gr1 FROM SGMNT WHERE o_cnt >= 3 AND d_max >= '01.04.2017'; --** 2921844,27862210509188839530 -- 2. Группа часто покупающих, но которые не покупали уже значительное время. -- Так же можем сделать вывод, из такой группы за след месяц сколько купят и на какую сумму. (постараться продумать логику) /*по клиентам взят промежуток что за месяц покупок не было, по хорошему, надо брать более точный отчёт по месяцам*/ SELECT u_id, o_sum/o_cnt/486*30 AS gr2 FROM SGMNT WHERE o_cnt >= 3 AND d_max <= '01.04.2017' OR d_max >= '01.06.2017'; /*полностью по группе*/ SELECT SUM(o_sum/o_cnt/486*30) AS gr2 FROM SGMNT WHERE o_cnt >= 3 AND d_max <= '01.04.2017' OR d_max >= '01.06.2017'; --** 7989036,69253143980353917810 -- 3. Отдельно разобрать пользователей с 1 и 2 покупками за все время, прогнозируем их. /*полностью по группе*/ SELECT SUM(o_sum/o_cnt/486*30) AS gr3 FROM SGMNT WHERE o_cnt IN (1,2); --** 71781084,90432098766042213600 -- 4. В итоге у вас будет прогноз ТО и ��ы сможете его сравнить с фактом и оценить грубо разлет по данным. SELECT 'GR1', SUM(o.price), 2921844 forecast FROM test.orders_20190822 o WHERE Extract(YEAR FROM o.o_date) = 2017 AND Extract(MONTH FROM o.o_date) = 5 AND o.user_id IN (SELECT SGMNT.u_id FROM SGMNT WHERE SGMNT.o_cnt >= 3 AND SGMNT.d_max >= '01.04.2017') UNION ALL SELECT 'GR2', SUM(o.price), 7989036 forecast FROM test.orders_20190822 o WHERE Extract(YEAR FROM o.o_date) = 2017 AND Extract(MONTH FROM o.o_date) = 5 AND o.user_id IN (SELECT SGMNT.u_id FROM SGMNT WHERE SGMNT.o_cnt >= 3 AND SGMNT.d_max <= '01.04.2017' OR SGMNT.d_max >= '01.06.2017') UNION ALL SELECT 'GR3', SUM(o.price), 71781084 forecast FROM test.orders_20190822 o WHERE Extract(YEAR FROM o.o_date) = 2017 AND Extract(MONTH FROM o.o_date) = 5 AND o.user_id IN (SELECT SGMNT.u_id FROM SGMNT WHERE SGMNT.o_cnt IN (1,2)) /* GR1 41722732,800 2921844 GR2 22468622,400 7989036 GR3 30109534,700 71781084 в таком подходе нет совпадений или чего-то общего */
0 notes
Text
Урок 1. Аналитика в бизнес-задачах
ДЗ к Урок 1 (итоговые данные можно предоставить в документе ворд или pdf, сильно расписывать не надо, просто выводы по пунктам) 1. Практическое задание по клиентской аналитике Действия: 1. Залить в свою БД данные по продажам (часть таблицы Orders в csv, исходник здесь https://drive.google.com/drive/folders/1C3HqIJcABblKM2tz8vPGiXTFT7MisrML?usp=sharing , интересует orders_20190822 ) 2. Проанализировать, какой период данных выгружен 3. Посчитать кол-во строк, кол-во заказов и кол-во уникальных пользователей, кот совершали заказы. 4. По годам и месяцам посчитать средний чек, среднее кол-во заказов на пользователя, сделать вывод , как изменялись это показатели Год от года. 5. Найти кол-во пользователей, кот покупали в одном году и перестали покупать в следующем. 6. Найти ID самого активного по кол-ву покупок пользователя. 7. Найти коэффициенты сезонности по месяцам.
1. + 2. ``` SELECT MIN(o.o_date),MAX(o.o_date) FROM test.orders_20190822 o; ``` 3. ``` SELECT * FROM (SELECT COUNT(*) "строк" FROM test.orders_20190822) t1 ,(SELECT COUNT(DISTINCT id_o) "заказов" FROM test.orders_20190822) t2 ,(SELECT COUNT(DISTINCT user_id) "пользователей" FROM test.orders_20190822) t3; ``` 4. ``` SELECT Extract(MONTH from ta1.o_date), ta1.avg, ta2.avg, ta1.avg - ta2.avg chng FROM T_AVGU ta1 --в месяцы есть за оба года INNER JOIN T_AVGU ta2 ON Extract(MONTH from ta1.o_date)=Extract(MONTH from ta2.o_date) AND Extract(YEAR from ta1.o_date)<Extract(YEAR from ta2.o_date) --тут всего 2 месяца AND Extract(YEAR from ta1.o_date) = 2016 AND Extract(YEAR from ta2.o_date) = 2017; ``` 5. ``` WITH T AS (SELECT user_id, Extract(YEAR from o.o_date) AS Y FROM test.orders_20190822 o) SELECT DISTINCT T1.user_id FROM T AS T1 LEFT JOIN T AS T2 ON T1.user_id = T2.user_id AND T1.Y < T2.Y AND T1.Y = 2016 WHERE T2.user_id IS NULL; ``` 6. ``` SELECT o.user_id FROM test.orders_20190822 o GROUP BY o.user_id ORDER BY SUM(o.price) DESC LIMIT 1; SELECT o.user_id FROM test.orders_20190822 o GROUP BY o.user_id ORDER BY COUNT(o.id_o) DESC LIMIT 1; ``` 7. ``` -- https://www.business.ru/article/2509-koeffitsient-sezonnosti WITH T AS (SELECT Extract(YEAR FROM o.o_date) Y, Extract(MONTH FROM o.o_date) M, SUM (o.price) sm, ROW_NUMBER () OVER (ORDER BY Extract(YEAR FROM o.o_date), Extract(MONTH FROM o.o_date)) N FROM test.orders_20190822 o GROUP BY Extract(YEAR FROM o.o_date), Extract(MONTH FROM o.o_date)) -- апрель 2020 = (апрель 2019/март 2019)*март 2019 SELECT T2.M, T2.Y+1, ROUND((T2.sm/T1.sm)*T1.sm,3) K FROM T AS T1 INNER JOIN T AS T2 ON T1.N = T2.N+1 ```
2 notes
·
View notes
Text
Аннушка уже приняла сигнал нового поколения, и не только приняла, но даже и раздала.
Появилась новость про запуск 5G в СПб. Новость про судный день пока не поступала.
А когда-то это никого не волновало.
Даже наоборот: появилась на телефоне 3ка вместо 2ки и: "О, круто! - мелодия через wap быстрее загрузится, правда я им не пользуюсь - 16Р/Мб...
А теперь началось выделение мобильных староверов из общей массы и уже никто не помнит про пейджеры🤷🏻♂️
Остается только взять вилы, факелы и пойти перекидывать сено ночью в поле.
7 notes
·
View notes
Text
После установки монго и запуска в одной из строк:
"error":"NonExistentPath: Data directory C:\\data\\db\\ not found. Create the missing directory or specify another path using (1) the --dbpath command line option, or (2) by adding the 'storage.dbPath' option in the configuration file."
mongod.exe --dbpath E:\mongoBase
-переназначает директорию для хранения
{"t":{"$date":"2021-05-18T01:33:27.191+03:00"},"s":"I", "c":"NETWORK", "id":23015, "ctx":"listener","msg":"Listening on","attr":{"address":"127.0.0.1"}} {"t":{"$date":"2021-05-18T01:33:27.191+03:00"},"s":"I", "c":"NETWORK", "id":23016, "ctx":"listener","msg":"Waiting for connections","attr":{"port":27017,"ssl":"off"}}
Тут прописан сервер и порт.
Изменить можно в: C:\Program Files\MongoDB\Server\4.4\bin\mongod.cfg
2 notes
·
View notes