{"id":293248,"date":"2019-08-12T09:01:03","date_gmt":"2019-08-12T09:01:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=293248"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=293248","title":{"rendered":"\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0445 \u0432\u043e\u0440\u043e\u043d\u043e\u043a \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 R, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0435\u0442\u0440\u0438\u043a\u0438"},"content":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<p>\u0410\u043d\u0430\u043b\u0438\u0437 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u0440\u043e\u0434\u0430\u0436 \u2014 \u0442\u0438\u043f\u0438\u0447\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430 \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433\u0430, \u0438 \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043c\u0435\u0440\u0446\u0438\u0438. \u0421 \u0435\u0451 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0412\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0430 \u043a\u0430\u043a\u043e\u043c \u0438\u0437 \u0448\u0430\u0433\u043e\u0432 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435 \u0432\u044b \u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. <\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0451\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u0442\u043e\u043a\u0430 \u0432\u044b\u0440\u0443\u0447\u043a\u0438, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u043d\u0430 \u043f\u0443\u0442\u0438 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435. <\/li>\n<li>\u041e\u0446\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0437\u0430\u043a\u0443\u043f\u0430\u0435\u043c\u043e\u0433\u043e \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0440\u0435\u043a\u043b\u0430\u043c\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445.<\/li>\n<li>\u041e\u0446\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0430\u044f\u0432\u043e\u043a \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0438\u0437 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 R \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438, \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u043e\u0440\u043e\u043d\u043a\u0443.<\/p>\n<p>  <\/p>\n<p>\u041e\u0434\u043d\u043e \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432 \u044f\u0437\u044b\u043a\u0430 R \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u044e\u0449\u0438\u0445 \u0435\u0433\u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b. \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0430\u043a\u0435\u0442\u044b <code>rym<\/code>, <code>funneljoin<\/code> \u0438 <code>ggplot2<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>rym<\/code> \u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API, <code>funneljoin<\/code> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438, \u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>ggplot2<\/code> \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/903\/ac7\/75e\/903ac775e293295d418a628a673f73d6.jpg\" alt=\"image\"><\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h1 id=\"soderzhanie\">\u0421\u043e\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<ul>\n<li><a href=\"#zarpros-dannyh-iz-logs-api-yandeks-metriki\">\u0417\u0430\u0440\u043f\u0440\u043e\u0441 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/a><br \/> \n<ul>\n<li><a href=\"#ustnovka-paketa-rym\">\u0423\u0441\u0442\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 rym<\/a><\/li>\n<li><a href=\"#rabota-s-logs-api-yandeks-metriki-s-pomoschyu-paketa-rym\">\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 rym<\/a><br \/> \n<ul>\n<li><a href=\"#avtorizaciya-v-api-yandeks-metriki\">\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0432 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/a><\/li>\n<li><a href=\"#zapros-dannyh-iz-api-yandeks-metriki\">\u0417\u0430\u043f\u0440\u043e\u0441 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#postroenie-voronok-paket-funneljoin\">\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0432\u043e\u0440\u043e\u043d\u043e\u043a, \u043f\u0430\u043a\u0435\u0442 funneljoin<\/a><br \/> \n<ul>\n<li><a href=\"#ustanovka-funneljoin\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 funneljoin<\/a><\/li>\n<li><a href=\"#postobrabotka-dannyh-poluchennyh-iz-logs-api\">\u041f\u043e\u0441\u0442\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API<\/a><\/li>\n<li><a href=\"#tipy-voronok\">\u0422\u0438\u043f\u044b \u0432\u043e\u0440\u043e\u043d\u043e\u043a<\/a><\/li>\n<li><a href=\"#shagi-po-voronke\">\u0428\u0430\u0433\u0438 \u043f\u043e \u0432\u043e\u0440\u043e\u043d\u043a\u0435<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#vizualizaciya-voronki\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438<\/a><br \/> \n<ul>\n<li><a href=\"#vizualizaciya-obschey-voronki\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0431\u0449\u0435\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438<\/a><\/li>\n<li><a href=\"#vizualizaciya-voronki-v-razreze-kanalov-trafika\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430<\/a><\/li>\n<\/ul>\n<\/li>\n<li><a href=\"#P.S.\">P.S.<\/a><\/li>\n<li><a href=\"#zaklyuchenie\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/a><\/li>\n<\/ul>\n<p>  <\/p>\n<h1 id=\"zarpros-dannyh-iz-logs-api-yandeks-metriki\">\u0417\u0430\u0440\u043f\u0440\u043e\u0441 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/h1>\n<p>  <\/p>\n<p>\u041a\u0442\u043e \u043d\u0435 \u0432 \u043a\u0443\u0440\u0441\u0435, \u0447\u0442\u043e \u0442\u0430\u043a\u043e\u0435 <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/logs\/intro-docpage\/\">Logs API<\/a> \u0432\u043e\u0442 \u0446\u0438\u0442\u0430\u0442\u0430 \u0438\u0437 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u043f\u0440\u0430\u0432\u043a\u0438 \u042f\u043d\u0434\u0435\u043a\u0441\u0430.<\/p>\n<p>  <\/p>\n<blockquote><p>Logs API \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043d\u0435\u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u043c\u044b\u0435 \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0435\u0442\u0440\u0438\u043a\u043e\u0439. \u0414\u0430\u043d\u043d\u044b\u0439 API \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u043e\u0442\u044f\u0442 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0445 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0437\u0430\u0434\u0430\u0447.<\/p><\/blockquote>\n<p>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 Logs API \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u0432 R \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 <code>rym<\/code>.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0441\u0441\u044b\u043b\u043a\u0438 \u043a \u043f\u0430\u043a\u0435\u0442\u0443 rym<\/b><\/p>\n<div class=\"spoiler_text\">\n<p>\u0421\u0441\u044b\u043b\u043a\u0438:<\/p>\n<p>  <\/p>\n<ul>\n<li><em><a href=\"https:\/\/selesnow.github.io\/rym\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043a \u043f\u0430\u043a\u0435\u0442\u0443 rym<\/a><\/em><\/li>\n<li><em><a href=\"https:\/\/cran.r-project.org\/package=rym\">\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 rym \u043d\u0430 CRAN<\/a><\/em><\/li>\n<li><em><a href=\"https:\/\/github.com\/selesnow\/rym\">\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 rym \u043d\u0430 GitHub<\/a><\/em><\/li>\n<li><em><a href=\"https:\/\/www.youtube.com\/watch?v=sCp2D6068es\">\u0412\u0435\u0431\u0438\u043d\u0430\u0440 \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 \u043f\u0430\u043a\u0435\u0442\u043e\u043c rym<\/a><\/em><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p><code>rym<\/code> \u2014 R \u043f\u0430\u043a\u0435\u0442 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u043d\u0442\u0440\u0435\u0439\u0444\u0435\u0439\u0441\u043e\u043c \u0434\u043b\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438. \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/management\/intro-docpage\/\">API \u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f<\/a>, <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/api_v1\/intro-docpage\/\">API \u041e\u0442\u0447\u0451\u0442\u043e\u0432<\/a>, <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/ga\/intro-docpage\/\">API \u0421\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u044b\u043c \u0441 Gore API Google Analytics v3<\/a> \u0438 <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/logs\/intro-docpage\/\">Logs API<\/a>.<\/p>\n<p>  <\/p>\n<h2 id=\"ustnovka-paketa-rym\">\u0423\u0441\u0442\u043d\u043e\u0432\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u0430 rym<\/h2>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043b\u044e\u0431\u044b\u043c \u043f\u0430\u043a\u0435\u0442\u043e\u043c \u0432 R \u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c, \u0438 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c. \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u043a\u0435\u0442 \u043e\u0434\u0438\u043d \u0440\u0430\u0437 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b <code>install.packages()<\/code>. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u043d\u043e\u0432\u043e\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u0432 R \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>library()<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u0430\u043a\u0435\u0442\u0430 <code>rym<\/code> \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435\u0441\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043a\u043e\u0434\u043e\u043c:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">install.packages(\"rym\") library(rym)<\/code><\/pre>\n<p>  <\/p>\n<h2 id=\"rabota-s-logs-api-yandeks-metriki-s-pomoschyu-paketa-rym\">\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 rym<\/h2>\n<p>  <\/p>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043e \u0432\u0441\u0435\u0445 \u0432\u0438\u0437\u0438\u0442\u0430\u0445 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u044b\u0445 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0430\u0439\u0442\u0435, \u0438 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u043a \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0437\u0443.<\/p>\n<p>  <\/p>\n<h3 id=\"avtorizaciya-v-api-yandeks-metriki\">\u0410\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044f \u0432 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/h3>\n<p>  <\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 API \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438. \u0412 \u043f\u0430\u043a\u0435\u0442\u0435 <code>rym<\/code> \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0447\u0430\u0441\u0442\u0438\u0447\u043d\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0432\u044b\u0437\u043e\u0432\u0435 \u043b\u044e\u0431\u043e\u0439 \u0435\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0438. <\/p>\n<p>  <\/p>\n<p>\u041f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a API \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0434\u043b\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0432\u0430\u0448\u0438\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430\u043c \u044f\u043d\u0434\u0435\u043a\u0441 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0434\u043b\u044f \u043f\u0430\u043a\u0435\u0442\u0430 <code>rym<\/code>. \u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0432\u044b \u0431\u0443\u0434\u0435\u0442\u0435 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0433\u0434\u0435 \u0434\u043b\u044f \u0432\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u043a\u043e\u0434 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438. \u0415\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u044c R, \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0432\u0435\u0442\u0430 \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441 <code>\"Enter authorize code:\"<\/code>. <\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0444\u0430\u0439\u043b, \u043e\u0442\u0432\u0435\u0442\u0438\u0432 <code>y<\/code> \u0438\u043b\u0438 <code>yes<\/code> \u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441 <code>\"Do you want save API credential in local file ...\"<\/code>. \u0412 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f\u0445 \u043a API \u0432\u0430\u043c \u043d\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442\u044c \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u044e \u0447\u0435\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u0435\u0440, \u0430 \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0431\u0443\u0434\u0443\u0442 \u043f\u043e\u0434\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f \u0438\u0437 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430.<\/p>\n<p>  <\/p>\n<h3 id=\"zapros-dannyh-iz-api-yandeks-metriki\">\u0417\u0430\u043f\u0440\u043e\u0441 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0437 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438<\/h3>\n<p>  <\/p>\n<p>\u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043c\u044b \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u043c \u0438\u0437 API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438 \u044d\u0442\u043e \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u0432, \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u0446\u0435\u043b\u0435\u0439. \u0414\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <code>rym_get_counters()<\/code> \u0438 <code>rym_get_goals()<\/code>.<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043f\u0430\u043a\u0435\u0442 library(rym)  # \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u0432 counters &lt;- rym_get_counters(login = \"\u0432\u0430\u0448 \u043b\u043e\u0433\u0438\u043d\")  # \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u0441\u043f\u0438\u0441\u043e\u043a \u0446\u0435\u043b\u0435\u0439 goals    &lt;- rym_get_goals(\"0000000\",  # \u043d\u043e\u043c\u0435\u0440 \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430                           login      = \"\u0432\u0430\u0448 \u043b\u043e\u0433\u0438\u043d\")<\/code><\/pre>\n<p>  <\/p>\n<p>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 \u0432\u044b\u0448\u0435 \u043f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u0435 <code>\"\u0432\u0430\u0448 \u043b\u043e\u0433\u0438\u043d\"<\/code> \u043d\u0430 \u0432\u0430\u0448 \u043b\u043e\u0433\u0438\u043d \u0432 \u044f\u043d\u0434\u0435\u043a\u0441\u0435, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u043d\u0443\u0436\u043d\u044b\u0435 \u0432\u0430\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0438 \u044f\u043d\u0434\u0435\u043a\u0441 \u043c\u0435\u0442\u0440\u0438\u043a\u0438. \u0418 <code>\"0000000\"<\/code> \u043d\u0430 \u043d\u043e\u043c\u0435\u0440 \u043d\u0443\u0436\u043d\u043e\u0433\u043e \u0432\u0430\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430. \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u043e\u043c\u0435\u0440\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0432\u0430\u043c \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u0432 \u043c\u043e\u0436\u043d\u043e \u0432 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 <em>counters<\/em>.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u0432 \u2014 <em>counters <\/em> \u0438\u043c\u0435\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u0432\u0438\u0434:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 2 x 9         id status owner_login      name       code_status  site       permission type   gdpr_agreement_accepted      &lt;int&gt; &lt;fct&gt;  &lt;fct&gt;            &lt;fct&gt;      &lt;fct&gt;        &lt;fct&gt;      &lt;fct&gt;      &lt;fct&gt;                    &lt;int&gt; 1 11111111 Active site.ru1         Aerosus    CS_NOT_FOUND site.ru    edit       simple                       0 2 00000000 Active site.ru          Aerosus RU CS_OK        site.ru    edit       simple                       1<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 \u043f\u043e\u043b\u0435 <em>id<\/em> \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043d\u043e\u043c\u0435\u0440\u0430 \u0432\u0441\u0435\u0445 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u043e\u0432 \u044f\u043d\u0434\u0435\u043a\u0441 \u043c\u0435\u0442\u0440\u0438\u043a\u0438.<\/p>\n<p>  <\/p>\n<p>\u0422\u0430\u0431\u043b\u0438\u0446\u0430 <em>goals<\/em> \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 4 x 5         id name                      type   is_retargeting conditions                                         &lt;int&gt; &lt;fct&gt;                     &lt;fct&gt;           &lt;int&gt; &lt;fct&gt;                                         1 47873638 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443         url                 0 type:contain, url:site.ru\/checkout\/cart\/   2 47873764 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435          url                 0 type:contain, url:site.ru\/onestepcheckout\/ 3 47874133 \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437 url                 0 type:contain, url:\/checkout\/onepage\/success   4 50646283 \u041a\u043b\u0438\u043a \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d    action              0 type:exact, url:click_phone       <\/code><\/pre>\n<p>  <\/p>\n<p>\u0422.\u0435. \u0432 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0435 \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u044f \u0440\u0430\u0431\u043e\u0442\u0430\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443<\/li>\n<li>\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435<\/li>\n<li>\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437<\/li>\n<li>\u041a\u043b\u0438\u043a \u043f\u043e \u043a\u043d\u043e\u043f\u043a\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0434\u043b\u044f \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0432 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 <code>tidyverse<\/code>: <code>tidyr<\/code>, <code>dplyr<\/code>. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u0434 \u0442\u0435\u043c, \u043a\u0430\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 \u0434\u0430\u043b\u0435\u0435 \u043f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0443 <code>tidyverse<\/code>.<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">install.packages(\"tidyverse\") library(tidyverse)<\/code><\/pre>\n<p>  <\/p>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>rym_get_logs()<\/code> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u043c\u0435\u0442\u0440\u0438\u043a\u0438. <\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u043c \u043b\u043e\u0433\u0438 \u043f\u043e \u0432\u0441\u0435\u043c \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u043c logs  &lt;- rym_get_logs(counter   = \"0000000\",                        date.from = \"2019-04-01\",                        date.to   = \"2019-06-30\",                        fields = \"ym:s:visitID,                                 ym:s:clientID,                                 ym:s:date,                                 ym:s:goalsID,                                 ym:s:lastTrafficSource,                                 ym:s:isNewUser\",                        login      = \"\u0432\u0430\u0448 \u043b\u043e\u0433\u0438\u043d\") %&gt;%             mutate(ym.s.date     = as.Date(ym.s.date),                    ym.s.clientID = as.character(ym.s.clientID))<\/code><\/pre>\n<p>  <\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>rym_get_logs()<\/code>:<\/p>\n<p>  <\/p>\n<ul>\n<li>counter \u2014 \u043d\u043e\u043c\u0435\u0440 \u0441\u0447\u0451\u0442\u0447\u0438\u043a\u0430 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0432\u044b \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442\u0435 \u043b\u043e\u0433\u0438;<\/li>\n<li>date.from \u2014 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u0434\u0430\u0442\u0430;<\/li>\n<li>date.to \u2014 \u043a\u043e\u043d\u0435\u0447\u043d\u0430\u044f \u0434\u0430\u0442\u0430;<\/li>\n<li>fields \u2014 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u043b\u0435\u0439 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c;<\/li>\n<li>login \u2014 \u043b\u043e\u0433\u0438\u043d \u043d\u0430 \u044f\u043d\u0434\u0435\u043a\u0441\u0435 \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0439 \u0432 <em>counter<\/em> \u0441\u0447\u0451\u0442\u0447\u0438\u043a.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u044b \u0437\u0430\u043f\u0440\u043e\u0441\u0438\u043b\u0438 \u0438\u0437 Logs API \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0432\u0438\u0437\u0438\u0442\u0430\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b:<\/p>\n<p>  <\/p>\n<ul>\n<li>ym:s:visitID \u2014 \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0432\u0438\u0437\u0438\u0442\u0430<\/li>\n<li>ym:s:clientID \u2014 \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u0441\u0430\u0439\u0442\u0435<\/li>\n<li>ym:s:date \u2014 \u0414\u0430\u0442\u0430 \u0432\u0438\u0437\u0438\u0442\u0430<\/li>\n<li>ym:s:goalsID \u2014 \u0418\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0446\u0435\u043b\u0435\u0439, \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b\u0445 \u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u0432\u0438\u0437\u0438\u0442<\/li>\n<li>ym:s:lastTrafficSource \u2014 \u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a \u0442\u0440\u0430\u0444\u0438\u043a\u0430<\/li>\n<li>ym:s:isNewUser \u2014 \u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442 \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435\u043b\u044f<\/li>\n<\/ul>\n<p>  <\/p>\n<blockquote><p>\u041f\u043e\u043b\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043f\u043e\u043b\u0435\u0439 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 <a href=\"https:\/\/yandex.ru\/dev\/metrika\/doc\/api2\/logs\/fields\/visits-docpage\/\">\u0441\u043f\u0440\u0430\u0432\u043a\u0435<\/a> \u043f\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0441 Logs API.<\/p><\/blockquote>\n<p>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0430\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438, \u0432 \u0441\u0432\u044f\u0437\u0438 \u0441 \u0447\u0435\u043c \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 Logs API \u043d\u0430 \u044d\u0442\u043e\u043c \u0437\u0430\u043a\u043e\u043d\u0447\u0435\u043d\u0430, \u0438 \u043c\u044b \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0438\u043c \u043a \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c\u0443 \u0448\u0430\u0433\u0443 \u2014 \u043f\u043e\u0441\u0442\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  <\/p>\n<h1 id=\"postroenie-voronok-paket-funneljoin\">\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0432\u043e\u0440\u043e\u043d\u043e\u043a, \u043f\u0430\u043a\u0435\u0442 funneljoin<\/h1>\n<p>  <\/p>\n<blockquote><p>\u0417\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0432 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0430 \u0438\u0437 README \u043f\u0430\u043a\u0435\u0442\u0430 funneljoin, \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0433\u043e \u043f\u043e <a href=\"https:\/\/github.com\/robinsones\/funneljoin\/blob\/master\/README.md\">\u0441\u0441\u044b\u043b\u043a\u0435<\/a>.<\/p><\/blockquote>\n<p>\u0426\u0435\u043b\u044c <code>funneljoin<\/code> \u2014 \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c \u0430\u043d\u0430\u043b\u0438\u0437 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u0430\u0448\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u0438\u0441\u043a\u0435 \u043b\u044e\u0434\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043e\u0441\u0435\u0442\u0438\u043b\u0438 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442, \u0430 \u0437\u0430\u0442\u0435\u043c \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043b\u0438\u0441\u044c, \u0438 \u0443\u0437\u043d\u0430\u0442\u044c \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u0440\u043e\u0448\u043b\u043e \u043c\u0435\u0436\u0434\u0443 \u043f\u0435\u0440\u0432\u044b\u043c \u043f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u0435\u043c \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0435\u0439. \u0418\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043d\u0430\u0439\u0442\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u043b\u0438 \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0443 \u0442\u043e\u0432\u0430\u0440\u0430 \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0435\u0433\u043e \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443 \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0438 \u0434\u0432\u0443\u0445 \u0434\u043d\u0435\u0439. \u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0440\u0435\u0448\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 <code>funneljoin<\/code> \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>after_join()<\/code>.<\/p>\n<p>  <\/p>\n<p><strong>\u0410\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b <code>after_join()<\/code>:<\/strong><\/p>\n<p>  <\/p>\n<ul>\n<li>x \u2014 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f (\u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u043f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u0435 \u0441\u0430\u0439\u0442\u0430, \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u043a\u0430\u0440\u0442\u043e\u0447\u043a\u0438 \u0442\u043e\u0432\u0430\u0440\u0430).<\/li>\n<li>y \u2014 \u043d\u0430\u0431\u043e\u0440 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439 \u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f, (\u0432 \u043f\u0435\u0440\u0432\u043e\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438, \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443).<\/li>\n<li>by_time \u2014 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u0434\u0430\u0442\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 <em>\u0445<\/em> \u0438 <em>\u0443<\/em>. <\/li>\n<li>by_user \u2014 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 <em>x<\/em> \u0438 <em>y<\/em>.<\/li>\n<li>mode \u2014 \u043c\u0435\u0442\u043e\u0434, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f: &#171;inner&#187;, &#171;full&#187;, &#171;anti&#187;, &#171;semi&#187;, &#171;right&#187;, &#171;left&#187;. \u0412\u043c\u0435\u0441\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u0432\u044b \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <code>after_mode_join<\/code> (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>after_inner_join<\/code> \u0432\u043c\u0435\u0441\u0442\u043e <code>after_join (..., mode = \"inner\")<\/code>). <\/li>\n<li>type \u2014 \u0442\u0438\u043f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0439 \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043f\u0430\u0440 \u0441\u043e\u0431\u044b\u0442\u0438\u0439, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a &#171;first-first&#187;, &#171;last-first&#187;, &#171;any-firstafter&#187;. \u0411\u043e\u043b\u0435\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 &#171;\u0422\u0438\u043f\u044b \u0432\u043e\u0440\u043e\u043d\u043e\u043a&#187;.<\/li>\n<li>max_gap \/ min_gap (\u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439) \u2014 \u0444\u0438\u043b\u044c\u0442\u0440 \u043f\u043e \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u0438 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0438 \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0441\u043e\u0431\u044b\u0442\u0438\u044f.<\/li>\n<li>gap_col (\u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439) \u2014 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u043b\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>.gap<\/em> \u0441 \u0440\u0430\u0437\u043d\u0438\u0446\u0435\u0439 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043c\u0435\u0436\u0434\u0443 \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u043c\u0438. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e FALSE.<\/li>\n<\/ul>\n<p>  <\/p>\n<h2 id=\"ustanovka-funneljoin\">\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 funneljoin<\/h2>\n<p>  <\/p>\n<p>\u041d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u043f\u0430\u043a\u0435\u0442 <code>funneljoin<\/code> \u043d\u0435 \u0431\u044b\u043b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u043d\u0430 CRAN, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0441 GitHub. \u0414\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438\u0437 GitHub \u0432\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0430\u043a\u0435\u0442 \u2014 <code>devtools<\/code>.<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">install.packages(\"devtools\") devtools::install_github(\"robinsones\/funneljoin\")<\/code><\/pre>\n<p>  <\/p>\n<h2 id=\"postobrabotka-dannyh-poluchennyh-iz-logs-api\">\u041f\u043e\u0441\u0442\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API<\/h2>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u0431\u043e\u043b\u0435\u0435 \u0434\u0435\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u043f\u043e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API \u0434\u0430\u043d\u043d\u044b\u0435 \u043a \u043d\u0443\u0436\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443. \u041d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0438 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043a\u0430\u043a \u044f \u0443\u0436\u0435 \u043f\u0438\u0441\u0430\u043b \u0432\u044b\u0448\u0435, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u043f\u0430\u043a\u0435\u0442\u044b <code>tidyr<\/code> \u0438 <code>dplyr<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<p>  <\/p>\n<ol>\n<li>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043e\u0434\u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u0442\u0430\u0431\u043b\u0438\u0446\u044b <em>logs<\/em> \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u043e\u0434\u043d\u043e\u043c \u0432\u0438\u0437\u0438\u0442\u0435, \u0430 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>ym.s.goalsID<\/em> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u043c \u0432\u0438\u0434\u0430 \u2014 <code>[0,1,0,...]<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0446\u0435\u043b\u0435\u0439, \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b\u0445 \u0432 \u0445\u043e\u0434\u0435 \u0434\u0430\u043d\u043d\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430. \u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043c\u0430\u0441\u0441\u0438\u0432 \u043a \u043f\u0440\u0438\u0433\u043e\u0434\u043d\u043e\u043c\u0443 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0434\u0443 \u0438\u0437 \u043d\u0435\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0431\u0440\u0430\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438.<\/li>\n<li>\u041d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0435\u0440\u0435\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0442\u0430\u043a, \u0447\u0442\u043e \u0431\u044b \u043e\u0434\u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043b\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043b\u0438, \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u043e\u0439 \u0432 \u0432\u0438\u0437\u0438\u0442\u0435. \u0422.\u0435. \u0435\u0441\u043b\u0438 \u0432 \u0445\u043e\u0434\u0435 \u043e\u0434\u043d\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430 \u0431\u044b\u043b\u043e \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u043e \u0442\u0440\u0438 \u0446\u0435\u043b\u0438, \u0442\u043e \u044d\u0442\u043e\u0442 \u0432\u0438\u0437\u0438\u0442 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0437\u0431\u0438\u0442 \u043d\u0430 \u0442\u0440\u0438 \u0441\u0442\u0440\u043e\u043a\u0438, \u0438 \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0435, \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0435 <em>ym.s.goalsID<\/em> \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u044c\u0441\u044f \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u043e\u0439 \u0446\u0435\u043b\u0438.<\/li>\n<li>\u041f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u0438\u0442\u044c \u043a \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043b\u043e\u0433\u043e\u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u0446\u0435\u043b\u0435\u0439, \u0447\u0442\u043e \u0431\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0442\u044c \u043a\u0430\u043a\u0438\u0435 \u0438\u043c\u0435\u043d\u043d\u043e \u0446\u0435\u043b\u0438 \u0431\u044b\u043b\u0438 \u0434\u043e\u0441\u0442\u0438\u0433\u043d\u0443\u0442\u044b \u0432 \u0445\u043e\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430.<\/li>\n<li>\u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>name<\/em> \u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f\u043c\u0438 \u0446\u0435\u043b\u0435\u0439 \u0432 <em>events<\/em>.<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u0412\u0441\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u0432\u044b\u0448\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044e\u0442\u0441\u044f \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u043a\u043e\u0434\u0430:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u043f\u043e\u0441\u0442\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0445 \u0438\u0437 Logs API<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u043a \u043d\u0443\u0436\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443 logs_goals &lt;- logs %&gt;%   mutate(ym.s.goalsID = str_replace_all(ym.s.goalsID, # \u043e\u0447\u0438\u0449\u0430\u0435\u043c \u043e\u0442 \u043b\u0438\u0448\u043d\u0438\u0445 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432                                         \"\\\\[|\\\\]\",                                          \"\") %&gt;%                          str_split(\",\")) %&gt;%           # \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u043c \u0432\u0438\u0437\u0438\u0442 \u043d\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f            unnest(cols = c(ym.s.goalsID)) %&gt;%   mutate(ym.s.goalsID = as.integer(ym.s.goalsID)) %&gt;% # \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u043c id \u0446\u0435\u043b\u0438 \u0432 \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0439 \u0444\u043e\u0440\u043c\u0430\u0442   left_join(goals,             by = c(\"ym.s.goalsID\" = \"id\")) %&gt;%        # \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u0434\u0435\u0439\u043c\u0442\u0432\u0438\u044f \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u0446\u0435\u043b\u0435\u0439   rename(events = name)                               # \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0446\u0435\u043b\u0438 \u0432 events<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u041d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u043a \u043a\u043e\u0434\u0443. \u041e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 <code>%&gt;%<\/code> \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u0430\u0439\u043f\u043b\u0430\u0439\u043d\u043e\u043c, \u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u043a\u043e\u0434 \u0431\u043e\u043b\u0435\u0435 \u0447\u0438\u0442\u0430\u0435\u043c\u044b\u043c \u0438 \u043a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u044b\u043c. \u041f\u043e \u0441\u0443\u0442\u0438, \u043e\u043d \u0431\u0435\u0440\u0451\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043e\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 \u0435\u0433\u043e \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0441\u0432\u043e\u0435\u043e\u0431\u0440\u0430\u0437\u043d\u044b\u0439 \u043a\u043e\u043d\u0432\u0435\u0439\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u0430\u043c \u043d\u0435 \u0437\u0430\u0441\u043e\u0440\u044f\u0442\u044c \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0443\u044e \u043f\u0430\u043c\u044f\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u043c\u0438 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u043c\u0438, \u0445\u0440\u0430\u043d\u044f\u0449\u0438\u043c\u0438 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.<\/p>\n<p>  <\/p>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>str_replace_all<\/code> \u0443\u0431\u0438\u0440\u0430\u0435\u0442 \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0435 <em>ym.s.goalsID<\/em> \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u043d\u044b\u0435 \u0441\u043a\u043e\u0431\u043a\u0438. <code>str_split<\/code> \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u0442 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0446\u0435\u043b\u0435\u0439 \u0438\u0437 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 <em>ym.s.goalsID<\/em> \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f, \u0430 <code>unnest<\/code> \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u0442 \u0438\u0445 \u043d\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438, \u0434\u0443\u0431\u043b\u0438\u0440\u0443\u044f \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432.<\/p>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>mutate<\/code> \u043c\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0446\u0435\u043b\u0435\u0439 \u043a \u0442\u0438\u043f\u0443 integer. <\/p>\n<p>  <\/p>\n<p><code>left_join<\/code> \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u043a \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u043c\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 <em>goals<\/em>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0445 \u0446\u0435\u043b\u044f\u0445. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0430 \u043a\u043b\u044e\u0447\u0430 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>ym.s.goalsID<\/em> \u0438\u0437 \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>id<\/em> \u0438\u0437 \u0442\u0430\u0431\u043b\u0438\u0446\u044b <em>goals<\/em>.<\/p>\n<p>  <\/p>\n<p>\u0418 \u0432 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f <code>rename<\/code> \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u0442 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <em>name<\/em> \u0432 <em>events<\/em>. <\/p>\n<p>  <\/p>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0442\u0430\u0431\u043b\u0438\u0446\u0430 <em>logs_goals<\/em> \u0438\u043c\u0435\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0439 \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0432\u0438\u0434.<\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0442\u0440\u0438 \u043d\u043e\u0432\u044b\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b:<\/p>\n<p>  <\/p>\n<ul>\n<li>first_visits \u2014 \u0434\u0430\u0442\u044b \u043f\u0435\u0440\u0432\u044b\u0445 \u0441\u0435\u0430\u043d\u0441\u043e\u0432 \u043f\u043e \u0432\u0441\u0435\u043c \u043d\u043e\u0432\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c<\/li>\n<li>cart \u2014 \u0434\u0430\u0442\u044b \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u043e\u0432\u0430\u0440\u043e\u0432 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443<\/li>\n<li>orders \u2014 \u0437\u0430\u043a\u0430\u0437\u044b<\/li>\n<\/ul>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0442\u0430\u0431\u043b\u0438\u0446<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043f\u0435\u0440\u0432\u044b\u0445 \u043f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u044f\u0445 first_visits &lt;- logs_goals %&gt;%   filter(ym.s.isNewUser == 1 ) %&gt;% # \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u044b\u0435 \u0432\u0438\u0437\u0438\u0442\u044b   select(ym.s.clientID,            # \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u043e\u043b\u0435 clientID          ym.s.date)                # \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u043c \u043f\u043e\u043b\u0435 date  # \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f\u0445 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443 cart &lt;- logs_goals %&gt;%   filter(events == \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\") %&gt;%   select(ym.s.clientID,          ym.s.date)  # \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u0437\u0430\u043a\u0430\u0437\u043e\u0432 orders &lt;- logs_goals  %&gt;%   filter(events == \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\") %&gt;%   select(ym.s.clientID,          ym.s.date) <\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u041a\u0430\u0436\u0434\u0430\u044f \u043d\u043e\u0432\u0430\u044f \u0442\u0430\u0431\u043b\u0438\u0446\u0430 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b <em>logs_goals<\/em>, \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u043c \u0448\u0430\u0433\u0435. \u0424\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <code>filter<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043e\u043a \u043d\u0430\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u043d\u043e\u0432\u044b\u0445 \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u0445 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e\u0431 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0438 \u0434\u0430\u0442\u0435 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0432 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u0445 <em>ym.s.clientID<\/em> \u0438 <em>ym.s.date<\/em>. \u041d\u0443\u0436\u043d\u044b\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u044b \u0431\u044b\u043b\u0438 \u0432\u044b\u0431\u0440\u0430\u043d\u044b \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>select<\/code>. <\/p>\n<p>  <\/p>\n<h2 id=\"tipy-voronok\">\u0422\u0438\u043f\u044b \u0432\u043e\u0440\u043e\u043d\u043e\u043a<\/h2>\n<p>  <\/p>\n<p>\u0410\u0440\u0433\u0443\u043c\u0435\u043d\u0442 <em>type<\/em> \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043b\u044e\u0431\u0443\u044e \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u044e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 <code>first<\/code>, <code>last<\/code>, <code>any<\/code> \u0438 <code>lastbefore<\/code> \u0441 <code>first<\/code>, <code>last<\/code>, <code>any<\/code> \u0438 <code>firstafter<\/code>. \u041d\u0438\u0436\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043b\u0435\u0437\u043d\u044b\u0445 \u043a\u043e\u043c\u0431\u0438\u043d\u0430\u0446\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c: <\/p>\n<p>  <\/p>\n<ul>\n<li><code>first-first<\/code>: \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u0430\u043c\u044b\u0435 \u0440\u0430\u043d\u043d\u0438\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f <em>x<\/em> \u0438 <em>y<\/em> \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u0442\u0443 <strong>\u043f\u0435\u0440\u0432\u043e\u0433\u043e<\/strong> \u0432\u0438\u0437\u0438\u0442\u0430, \u0438 \u0434\u0430\u0442\u0443 <strong>\u043f\u0435\u0440\u0432\u043e\u0439<\/strong> \u043f\u043e\u043a\u0443\u043f\u043a\u0438, \u0432 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0438\u043f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 <code>first-first<\/code>. <\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># \u0441\u0442\u0440\u043e\u0438\u043c \u043f\u0435\u0440\u0432\u0443\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0443 first-first first_visits %&gt;%   after_inner_join(orders,                     by_user = \"ym.s.clientID\",                    by_time = \"ym.s.date\",                    type    = \"first-first\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 42 x 3    ym.s.clientID        ym.s.date.x ym.s.date.y    &lt;chr&gt;                &lt;date&gt;      &lt;date&gt;       1 1552251706539589249  2019-04-18  2019-05-15   2 1554193975665391000  2019-04-02  2019-04-15   3 1554317571426012455  2019-04-03  2019-04-04   4 15544716161033564779 2019-04-05  2019-04-08   5 1554648729526295287  2019-04-07  2019-04-11   6 1554722099539384487  2019-04-08  2019-04-17   7 1554723388680198551  2019-04-08  2019-04-08   8 15547828551024398507 2019-04-09  2019-05-13   9 1554866701619747784  2019-04-10  2019-04-10  10 1554914125524519624  2019-04-10  2019-04-10  # ... with 32 more rows<\/code><\/pre>\n<p>  <\/p>\n<p>\u041c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 1 \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u0434\u0430\u0442\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043d\u0430 \u0441\u0430\u0439\u0442, \u0438 \u0434\u0430\u0442\u0443 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0435\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430.<\/p>\n<p>  <\/p>\n<ul>\n<li><code>first-firstafter<\/code>: \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u0430\u043c\u044b\u0439 \u0440\u0430\u043d\u043d\u0438\u0439 <em>x<\/em>, \u0437\u0430\u0442\u0435\u043c \u043f\u0435\u0440\u0432\u044b\u0439 <em>y<\/em> \u0441\u043b\u0443\u0447\u0438\u0432\u0448\u0438\u0439\u0441\u044f \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e <em>x<\/em>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u043b \u0432\u0438\u0437\u0438\u0442\u044b \u043d\u0430 \u0432\u0430\u0448 \u0441\u0430\u0439\u0442, \u0438 \u0432 \u0445\u043e\u0434\u0435 \u0432\u0438\u0437\u0438\u0442\u043e\u0432 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b \u0442\u043e\u0432\u0430\u0440\u044b \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443, \u0435\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u0442\u0443 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044f \u0441\u0430\u043c\u043e\u0433\u043e <strong>\u043f\u0435\u0440\u0432\u043e\u0433\u043e<\/strong> \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443, \u0438 \u0434\u0430\u0442\u0443 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f <strong>\u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e<\/strong> \u043a \u043d\u0435\u043c\u0443 \u0437\u0430\u043a\u0430\u0437\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0438\u043f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 <code>first-firstafter<\/code>.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\">cart %&gt;%   after_inner_join(orders,                     by_user = \"ym.s.clientID\",                    by_time = \"ym.s.date\",                    type    = \"first-firstafter\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 49 x 3    ym.s.clientID        ym.s.date.x ym.s.date.y    &lt;chr&gt;                &lt;date&gt;      &lt;date&gt;       1 1551433754595068897  2019-04-02  2019-04-05   2 1552251706539589249  2019-05-15  2019-05-15   3 1552997205196001429  2019-05-23  2019-05-23   4 1553261825377658768  2019-04-11  2019-04-11   5 1553541720631103579  2019-04-04  2019-04-05   6 1553761108775329787  2019-04-16  2019-04-16   7 1553828761648236553  2019-04-03  2019-04-03   8 1554193975665391000  2019-04-13  2019-04-15   9 1554317571426012455  2019-04-04  2019-04-04  10 15544716161033564779 2019-04-08  2019-04-08  # ... with 39 more rows<\/code><\/pre>\n<p>  <\/p>\n<ul>\n<li><code>lastbefore-firstafter<\/code>: \u043f\u0435\u0440\u0432\u044b\u0439 <em>x<\/em>, \u0437\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0441\u043b\u0435\u0434\u0443\u0435\u0442 <em>y<\/em> \u043f\u0435\u0440\u0435\u0434 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c <em>x<\/em>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u043f\u043e\u0441\u0435\u0449\u0430\u043b \u0432\u0430\u0448 \u0441\u0430\u0439\u0442, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u0441\u0435\u0430\u043d\u0441\u043e\u0432 \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u043b\u0438\u0441\u044c \u043f\u043e\u043a\u0443\u043f\u043a\u043e\u0439. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u0442\u0443 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0441\u0435\u0430\u043d\u0441\u0430 \u043f\u0435\u0440\u0435\u0434 \u043f\u043e\u043a\u0443\u043f\u043a\u043e\u0439, \u0438 \u0434\u0430\u0442\u0443 \u043f\u043e\u043a\u0443\u043f\u043a\u0438 \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043b\u0430 \u0437\u0430 \u043d\u0438\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0438\u043f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 <code>lastbefore-firstafter<\/code>.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\">first_visits %&gt;%   after_inner_join(orders,                     by_user = \"ym.s.clientID\",                    by_time = \"ym.s.date\",                    type    = \"lastbefore-firstafter\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 50 x 3    ym.s.clientID       ym.s.date.x ym.s.date.y    &lt;chr&gt;               &lt;date&gt;      &lt;date&gt;       1 1551433754595068897 2019-04-05  2019-04-05   2 1552251706539589249 2019-05-15  2019-05-15   3 1552251706539589249 2019-05-16  2019-05-16   4 1552997205196001429 2019-05-23  2019-05-23   5 1553261825377658768 2019-04-11  2019-04-11   6 1553541720631103579 2019-04-05  2019-04-05   7 1553761108775329787 2019-04-16  2019-04-16   8 1553828761648236553 2019-04-03  2019-04-03   9 1554193975665391000 2019-04-15  2019-04-15  10 1554317571426012455 2019-04-04  2019-04-04  # ... with 40 more rows<\/code><\/pre>\n<p>  <\/p>\n<p>\u0412 \u0434\u0430\u043d\u043d\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0443, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u0434\u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0434\u0430\u0442\u0443 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0442\u043e\u0432\u0430\u0440\u0430 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443 \u043f\u0435\u0440\u0435\u0434 \u043a\u0430\u0436\u0434\u044b\u043c \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0435\u043c \u0437\u0430\u043a\u0430\u0437\u0430, \u0438 \u0434\u0430\u0442\u0443 \u0441\u0430\u043c\u043e\u0433\u043e \u0437\u0430\u043a\u0430\u0437\u0430.<\/p>\n<p>  <\/p>\n<ul>\n<li><code>any-firstafter<\/code>: \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432\u0441\u0435 <em>x<\/em> \u0438 \u043f\u0435\u0440\u0432\u044b\u0439 <em>y<\/em> \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0433\u043e. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u043f\u043e\u0441\u0435\u0449\u0430\u043b \u0432\u0430\u0448 \u0441\u0430\u0439\u0442, \u0432 \u0445\u043e\u0434\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u0441\u0435\u0449\u0435\u043d\u0438\u044f \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0442\u043e\u0432\u0430\u0440\u044b \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443 \u0438 \u043f\u0435\u0440\u0438\u043e\u0434\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0430\u043b \u0437\u0430\u043a\u0430\u0437\u044b \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430\u043c\u0438. \u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u0442\u044b \u0432\u0441\u0435\u0445 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u0442\u043e\u0432\u0430\u0440\u043e\u0432 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443, \u0438 \u0434\u0430\u0442\u044b \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u0437\u043e\u0432 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0442\u0438\u043f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 <code>any-firstafter<\/code>.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\">cart %&gt;%   after_inner_join(orders,                     by_user = \"ym.s.clientID\",                    by_time = \"ym.s.date\",                    type    = \"any-firstafter\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 239 x 3    ym.s.clientID       ym.s.date.x ym.s.date.y    &lt;chr&gt;               &lt;date&gt;      &lt;date&gt;       1 1551433754595068897 2019-04-02  2019-04-05   2 1551433754595068897 2019-04-02  2019-04-05   3 1551433754595068897 2019-04-03  2019-04-05   4 1551433754595068897 2019-04-03  2019-04-05   5 1551433754595068897 2019-04-03  2019-04-05   6 1551433754595068897 2019-04-05  2019-04-05   7 1551433754595068897 2019-04-05  2019-04-05   8 1551433754595068897 2019-04-05  2019-04-05   9 1551433754595068897 2019-04-05  2019-04-05  10 1551433754595068897 2019-04-05  2019-04-05  # ... with 229 more rows<\/code><\/pre>\n<p>  <\/p>\n<ul>\n<li>any-any: \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0432\u0441\u0435 <em>x<\/em> \u0438 \u0432\u0441\u0435 <em>y<\/em> \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0437\u0430 \u043a\u0430\u0436\u0434\u044b\u043c <em>x<\/em>. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u0432\u0438\u0437\u0438\u0442\u043e\u0432 \u043d\u0430 \u0441\u0430\u0439\u0442 \u0441\u043e \u0432\u0441\u0435\u043c\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c\u0438 \u0437\u0430\u043a\u0430\u0437\u0430\u043c\u0438 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u043d\u044b\u043c\u0438 \u043a\u0430\u0436\u0434\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\">first_visits %&gt;%   after_inner_join(orders,                     by_user = \"ym.s.clientID\",                    by_time = \"ym.s.date\",                    type    = \"any-any\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 122 x 3    ym.s.clientID        ym.s.date.x ym.s.date.y    &lt;chr&gt;                &lt;date&gt;      &lt;date&gt;       1 1552251706539589249  2019-04-18  2019-05-15   2 1552251706539589249  2019-04-18  2019-05-15   3 1552251706539589249  2019-04-18  2019-05-15   4 1552251706539589249  2019-04-18  2019-05-16   5 1554193975665391000  2019-04-02  2019-04-15   6 1554193975665391000  2019-04-02  2019-04-25   7 1554317571426012455  2019-04-03  2019-04-04   8 15544716161033564779 2019-04-05  2019-04-08   9 1554648729526295287  2019-04-07  2019-04-11  10 1554722099539384487  2019-04-08  2019-04-17  # ... with 112 more rows<\/code><\/pre>\n<p>  <\/p>\n<h3 id=\"shagi-po-voronke\">\u0428\u0430\u0433\u0438 \u043f\u043e \u0432\u043e\u0440\u043e\u043d\u043a\u0435<\/h3>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u0432\u044b\u0448\u0435 \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u044e\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 <code>after_inner_join()<\/code>, \u0435\u0451 \u0443\u0434\u043e\u0431\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432 \u0441\u043b\u0443\u0447\u0430\u044f\u0445, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0432\u0441\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u044b \u043f\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u043e \u0442\u0430\u0431\u043b\u0438\u0446\u0430\u043c <em>first_visits<\/em>, <em>cart<\/em> \u0438 <em>orders<\/em>.<\/p>\n<p>  <\/p>\n<p>\u041d\u043e Logs API \u043e\u0442\u0434\u0430\u0451\u0442 \u0432\u0430\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431\u043e \u0432\u0441\u0435\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u044f\u0445 \u0432 \u043e\u0434\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435, \u0438 \u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0439 <code>funnel_start()<\/code> \u0438 <code>funnel_step()<\/code>. <code>funnel_start<\/code> \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u044b\u0439 \u0448\u0430\u0433 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0438 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u044f\u0442\u044c \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432:<\/p>\n<p>  <\/p>\n<ul>\n<li>tbl \u2014 \u0422\u0430\u0431\u043b\u0438\u0446\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0439;<\/li>\n<li>moment_type \u2014 \u041f\u0435\u0440\u0432\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435 \u0432 \u0432\u043e\u0440\u043e\u043d\u043a\u0435;<\/li>\n<li>moment \u2014 \u0418\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u044f;<\/li>\n<li>tstamp \u2014 \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0441 \u0434\u0430\u0442\u043e\u0439 \u0441\u043e\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0441\u043e\u0431\u044b\u0442\u0438\u044f;<\/li>\n<li>user \u2014 \u0418\u043c\u044f \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0441 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u0430\u043c\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439.<\/li>\n<\/ul>\n<p>  <\/p>\n<pre><code class=\"plaintext\">logs_goals %&gt;%   select(events,          ym.s.clientID,          ym.s.date) %&gt;%   funnel_start(moment_type = \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\",                 moment      = \"events\",                 tstamp      = \"ym.s.date\",                 user        = \"ym.s.clientID\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 52 x 2    ym.s.clientID       `ym.s.date_\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437`    &lt;chr&gt;               &lt;date&gt;                                 1 1556018960123772801 2019-04-24                             2 1561216372134023321 2019-06-22                             3 1556955573636389438 2019-05-04                             4 1559220890220134879 2019-05-30                             5 1553261825377658768 2019-04-11                             6 1561823182372545402 2019-06-29                             7 1556047887455246275 2019-04-23                             8 1554722099539384487 2019-04-17                             9 1555420652241964245 2019-04-17                            10 1553541720631103579 2019-04-05                            # ... with 42 more rows<\/code><\/pre>\n<p>  <\/p>\n<p><code>funnel_start<\/code> \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 <em>ym.s.clientI<\/em> \u0438 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u043c <code>ym.s.date_\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437<\/code> (\u0438\u043c\u044f \u0432\u0430\u0448\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0431\u0446\u0430 \u0441 \u0434\u0430\u0442\u043e\u0439, _ \u0438 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0435\u043c \u0441\u043e\u0431\u044b\u0442\u0438\u044f).<\/p>\n<p>  <\/p>\n<p>\u041f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438 \u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>funnel_step()<\/code>. \u0412 <code>funnel_start<\/code> \u043c\u044b \u0443\u0436\u0435 \u0443\u043a\u0430\u0437\u0430\u043b\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440\u044b \u0432\u0441\u0435\u0445 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0445 \u0441\u0442\u043e\u043b\u0431\u0446\u043e\u0432, \u0442\u0435\u043f\u0435\u0440\u044c \u043d\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043a\u0430\u043a\u043e\u0435 \u0441\u043e\u0431\u044b\u0442\u0438\u0435 \u0431\u0443\u0434\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0448\u0430\u0433\u043e\u043c \u0432 \u0432\u043e\u0440\u043e\u043d\u043a\u0435, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0430 <em>moment_type<\/em>, \u0438 \u0442\u0438\u043f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u2014 <em>type <\/em> (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, <code>\"first-first\"<\/code>, <code>\"first-any\"<\/code>).<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">logs_goals %&gt;%   select(events,          ym.s.clientID,          ym.s.date) %&gt;%   funnel_start(moment_type = \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",                 moment      = \"events\",                 tstamp      = \"ym.s.date\",                 user        = \"ym.s.clientID\") %&gt;%   funnel_step(moment_type = \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\",               type = \"first-last\")<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 319 x 3    ym.s.clientID       `ym.s.date_\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443` `ym.s.date_\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437`    &lt;chr&gt;               &lt;date&gt;                        &lt;date&gt;                                 1 1550828847886891355 2019-04-01                    NA                                     2 1551901759770098825 2019-04-01                    NA                                     3 1553595703262002507 2019-04-01                    NA                                     4 1553856088331234886 2019-04-01                    NA                                     5 1554044683888242311 2019-04-01                    NA                                     6 1554095525459102609 2019-04-01                    NA                                     7 1554100987632346537 2019-04-01                    NA                                     8 1551433754595068897 2019-04-02                    2019-04-05                             9 1553627918798485452 2019-04-02                    NA                                    10 155418104743178061  2019-04-02                    NA                                    # ... with 309 more rows<\/code><\/pre>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>funnel_step<\/code> \u043c\u043e\u0436\u043d\u043e \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0441 \u043b\u044e\u0431\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u0448\u0430\u0433\u043e\u0432. \u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u043d\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u0432 \u043c\u043e\u0451\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u0435, \u043c\u043e\u0436\u043d\u043e \u0432\u043e\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043a\u043e\u0434\u043e\u043c:<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u043d\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043b\u043e\u0433\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043f\u0435\u0440\u0432\u043e\u043c \u0432\u0438\u0437\u0438\u0442\u0435 # \u0441 \u043f\u043e\u043c\u0435\u0442\u043a\u043e\u0439 \u0432 \u043f\u043e\u043b\u0435 events - \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\" logs_goals &lt;- logs_goals %&gt;%                 filter(ym.s.isNewUser == 1 ) %&gt;%                 mutate(events = \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\") %&gt;%                 bind_rows(logs_goals)  # \u0441\u0442\u0440\u043e\u0438\u043c \u0432\u043e\u0440\u043e\u043d\u043a\u0443 \u043f\u043e\u043b\u043d\u0443\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0443 logs_goals %&gt;%    select(events,          ym.s.clientID,          ym.s.date) %&gt;%   funnel_start(moment_type = \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\",                 moment      = \"events\",                 tstamp      = \"ym.s.date\",                 user        = \"ym.s.clientID\") %&gt;%   funnel_step(moment_type = \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",               type = \"first-last\") %&gt;%   funnel_step(moment_type = \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435\",               type = \"first-last\") %&gt;%   funnel_step(moment_type = \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\",               type = \"first-last\")<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u0432\u0438\u0448\u0435\u043d\u043a\u0430 \u043d\u0430 \u0442\u043e\u0440\u0442\u0435 \u2014 <code>summarize_funnel()<\/code>. \u0424\u0443\u043d\u043a\u0446\u0438\u044f, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0432\u044b\u0432\u0435\u0441\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0435\u0440\u0435\u0448\u0435\u0434\u0448\u0438\u0445 \u0441 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u043d\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439, \u0438 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0445 \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0448\u0430\u0433\u0430, \u0434\u043e \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e.<\/p>\n<p>  <\/p>\n<pre><code class=\"plaintext\">my_funnel &lt;- logs_goals %&gt;%    select(events,          ym.s.clientID,          ym.s.date) %&gt;%   funnel_start(moment_type = \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\",                 moment      = \"events\",                 tstamp      = \"ym.s.date\",                 user        = \"ym.s.clientID\") %&gt;%   funnel_steps(moment_type = c(\"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",                                \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435\",                                \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\"),                type = \"first-last\") %&gt;%   summarize_funnel()<\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 4 x 4   moment_type               nb_step pct_cumulative pct_step   &lt;fct&gt;                       &lt;dbl&gt;          &lt;dbl&gt;    &lt;dbl&gt; 1 \u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442                18637         1       NA      2 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443            1589         0.0853   0.0853 3 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435              689         0.0494   0.579  4 \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437      34         0.0370   0.749 <\/code><\/pre>\n<p>  <\/p>\n<p><code>nb_step<\/code> \u2014 \u044d\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0445 \u043a\u0430\u0436\u0434\u044b\u0439 \u0448\u0430\u0433, <code>pct_cumulative<\/code> \u2014 \u044d\u0442\u043e \u043f\u0440\u043e\u0446\u0435\u043d\u0442 \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0445 \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0448\u0430\u0433\u0430, \u0430 <code>pct_step<\/code> \u2014 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0438\u0445 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0438\u0439 \u0448\u0430\u0433.<\/p>\n<p>  <\/p>\n<h1 id=\"vizualizaciya-voronki\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438<\/h1>\n<p>  <\/p>\n<p>\u041c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u043e\u0431\u044a\u0435\u043a\u0442 <em>my_funnel<\/em> \u0441 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u043e\u0439, \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0435\u0451 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 <code>ggplot2<\/code>.<\/p>\n<p>  <\/p>\n<p><code>ggplot2<\/code> \u2014 \u043e\u0434\u0438\u043d \u0438\u0437 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0434\u043b\u044f R, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d \u0431\u043e\u043b\u0435\u0435 \u043c\u0438\u043b\u043b\u0438\u043e\u043d\u0430 \u0440\u0430\u0437. \u042d\u0442\u043e \u043c\u043e\u0449\u043d\u0435\u0439\u0448\u0435\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043e \u043d\u0451\u043c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0441\u0442\u0430\u0442\u0435\u0439, \u0438 \u043a\u043d\u0438\u0433. <\/p>\n<p>  <\/p>\n<p>\u041a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f <code>ggplot2<\/code> \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 <a href=\"https:\/\/www.twirpx.com\/file\/1680686\/\">\u0433\u0440\u0430\u043c\u043c\u0430\u0442\u0438\u043a\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0440\u0430\u0444\u0438\u043a\u0438<\/a>, \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043d\u043d\u043e\u0439 \u041b\u0435\u043b\u0430\u043d\u0434\u043e\u043c \u0423\u0438\u043b\u043a\u0438\u043d\u0441\u043e\u043d\u043e\u043c \u0432 2005 \u0433\u043e\u0434\u0443. \u0412\u044b \u0441\u043b\u043e\u0439 \u0437\u0430 \u0441\u043b\u043e\u0435\u043c, \u043f\u043e\u0434\u043e\u0431\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0435 \u0432 photoshop, \u0441\u0442\u0440\u043e\u0438\u0442\u0435 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e, \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u044f \u043d\u0430 \u043d\u0435\u0451 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0433\u0435\u043e\u043c\u0435\u0442\u0440\u0438\u0438 \u0438 \u0441\u043b\u043e\u0438.<\/p>\n<p>  <\/p>\n<h3 id=\"vizualizaciya-obschey-voronki\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043e\u0431\u0449\u0435\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438<\/h3>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041f\u0440\u0438\u043c\u0435\u0440 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u043e\u0440\u043e\u043d\u043a\u0438<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># install.packages(\"ggplot2\") library(ggplot2) my_funnel %&gt;%   mutate(padding = (sum(my_funnel$nb_step) - nb_step) \/ 2) %&gt;%   gather(key = \"variable\", value = \"val\", -moment_type) %&gt;%   filter(variable %in% c(\"nb_step\", \"padding\")) %&gt;%   arrange(desc(variable)) %&gt;%   mutate(moment_type = factor(moment_type,                                levels = c(\"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\",                                          \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435\",                                          \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",                                          \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\"))) %&gt;%   ggplot( aes(x = moment_type) ) +   geom_bar(aes(y = val, fill = variable),            stat='identity', position='stack') +   scale_fill_manual(values = c('coral', NA) ) +   geom_text(data = my_funnel,             aes(y     = sum(my_funnel$nb_step) \/ 2,                  label = paste(round(round(pct_cumulative * 100,2)), '%')),             colour='tomato4',             fontface = \"bold\") +   coord_flip() +   theme(legend.position = 'none') +   labs(x='moment', y='volume')<\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 \u0432\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0435 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e:<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/260\/763\/bcf\/260763bcf4c60a84ab713d2931e95ebe.png\" alt=\"\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438\"><\/p>\n<p>  <\/p>\n<p>\u0414\u0430\u043c \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043f\u043e\u044f\u0441\u043d\u0435\u043d\u0438\u0435 \u043a \u043a\u043e\u0434\u0443. <\/p>\n<p>  <\/p>\n<ol>\n<li>\u0418\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u043c\u044b \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u043d\u0443\u0436\u043d\u043e\u043c\u0443 \u0432\u0438\u0434\u0443 \u043d\u0430\u0448\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 <em>my_funnel<\/em>.<\/li>\n<li><code>ggplot<\/code> \u2014 \u0444\u0443\u043d\u043a\u0446\u0438\u044f \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u0434\u0430\u0451\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u0441\u043b\u043e\u0439 \u0433\u0440\u0430\u0444\u0438\u043a\u0430, \u0438 \u0435\u0433\u043e \u043e\u0431\u0449\u0438\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0443\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u043f\u043e \u043e\u0441\u0438 X \u0443 \u043d\u0430\u0441 \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0442\u044c\u0441\u044f <em>moment_type<\/em>.<\/li>\n<li><code>geom_bar<\/code> \u2014 \u0441\u043b\u043e\u0439 \u2014 \u0441\u0442\u043e\u043b\u0431\u0447\u0430\u0442\u0430\u044f \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0430, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u044b \u0442\u0430\u043a\u0436\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0440\u044f\u0434 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>aes<\/code>.<\/li>\n<li><code>scale_fill_manual<\/code> \u2014 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0430, \u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043c\u044b \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u044b\u043c \u043d\u0435\u043d\u0443\u0436\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u0437\u0430\u0434\u0430\u043b\u0438 \u0446\u0432\u0435\u0442 \u0432\u043e\u0440\u043e\u043d\u043a\u0438.<\/li>\n<li><code>geom_text<\/code> \u2014 \u0441\u043b\u043e\u0439 \u0441 \u0442\u0435\u043a\u0441\u0442\u043e\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u0442 % \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0435.<\/li>\n<li><code>coord_flip<\/code> \u2014 \u043f\u0435\u0440\u0435\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0435\u0442 \u0441\u0442\u043e\u043b\u0431\u0447\u0430\u0442\u0443\u044e \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0443, \u0438 \u043f\u0440\u0438\u0434\u0430\u0451\u0442 \u0441\u0442\u043e\u043b\u0431\u0446\u0430\u043c \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/li>\n<li><code>theme<\/code> \u2014 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 \u043b\u044e\u0431\u043e\u0433\u043e \u044d\u043b\u0435\u043c\u0435\u043d\u0442\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430: \u0442\u0435\u043a\u0441\u0442\u0430, \u0444\u043e\u043d\u0430 \u0438 \u0442.\u0434. \u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044d\u0442\u043e\u0433\u043e \u0441\u043b\u043e\u044f \u043c\u044b \u0443\u0431\u0440\u0430\u043b\u0438 \u0432\u044b\u0432\u043e\u0434 \u043b\u0435\u0433\u0435\u043d\u0434\u044b.<\/li>\n<li><code>labs<\/code> \u2014 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0434\u0430\u0442\u044c \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u0435\u043c\u044b\u0435 \u0438\u043c\u0435\u043d\u0430 \u043e\u0441\u0435\u0439.<\/li>\n<\/ol>\n<p>  <\/p>\n<h3 id=\"vizualizaciya-voronki-v-razreze-kanalov-trafika\">\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430<\/h3>\n<p>  <\/p>\n<p>\u041d\u043e \u044d\u0442\u043e \u0435\u0449\u0451 \u043d\u0435 \u0432\u0441\u0451, \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0432\u043e\u0440\u043e\u043d\u043a\u0438, \u043a\u0430\u043a \u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0435\u0451 \u0432 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0435\u0437\u0430\u0445, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432. <\/p>\n<p>  <\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <code>lapply<\/code>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u043d\u044b\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u043c \u0446\u0438\u043a\u043b\u043e\u0432 \u0432 R. \u0421 \u0435\u0451 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043c\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u0438, \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0438\u0437 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0445 \u043d\u0430\u0441 \u043a\u0430\u043d\u0430\u043b\u043e\u0432, \u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>bind_rows<\/code>.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u043e\u0440\u043e\u043d\u043e\u043a \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># \u041f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u043e\u043b\u0431\u0435\u0446 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0430 \u0432 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0438\u0434\u0438\u0442\u0430  first_visits &lt;- rename(first_visits,                         firstSource = ym.s.lastTrafficSource)  # \u041a \u043e\u0431\u0449\u0435\u043c \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043f\u0440\u0438\u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430 logs_goals &lt;- select(first_visits,                      ym.s.clientID,                      firstSource) %&gt;%   left_join(logs_goals,             .,             by = \"ym.s.clientID\")  # \u0421\u0447\u0438\u0442\u0430\u0435\u043c \u0432\u043e\u0440\u043e\u043d\u043a\u0443 \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c my_multi_funnel &lt;- lapply(c(\"ad\", \"organic\", \"direct\"),                            function(source) {                             logs_goals %&gt;%                                filter(firstSource == source) %&gt;%                               select(events,                                      ym.s.clientID,                                      ym.s.date) %&gt;%                               funnel_start(moment_type = \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\",                                             moment      = \"events\",                                             tstamp      = \"ym.s.date\",                                             user        = \"ym.s.clientID\") %&gt;%                               funnel_steps(moment_type = c(\"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",                                                            \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435\",                                                            \"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\"),                                            type = \"first-last\") %&gt;%                               summarize_funnel() %&gt;%                               mutate(firstSource = source)                           }) %&gt;%                        bind_rows() # \u043e\u0431\u044a\u0435\u0434\u0435\u043d\u044f\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 <\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<pre><code class=\"plaintext\"># A tibble: 12 x 5    moment_type               nb_step pct_cumulative pct_step firstSource    &lt;fct&gt;                       &lt;int&gt;          &lt;dbl&gt;    &lt;dbl&gt; &lt;chr&gt;        1 \u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442                14392       1         NA      ad           2 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443             154       0.0107     0.0107 ad           3 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435               63       0.00438    0.409  ad           4 \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437      14       0.000973   0.222  ad           5 \u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442                 3372       1         NA      organic      6 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443              68       0.0202     0.0202 organic      7 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435               37       0.0110     0.544  organic      8 \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437      13       0.00386    0.351  organic      9 \u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442                  607       1         NA      direct      10 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443              49       0.0807     0.0807 direct      11 \u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435               21       0.0346     0.429  direct      12 \u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437       8       0.0132     0.381  direct  <\/code><\/pre>\n<p>  <\/p>\n<p>\u041d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u044b <em>my_multi_funnel<\/em>, \u0442\u0435\u043f\u0435\u0440\u044c \u043c\u043e\u0436\u043d\u043e \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432.<\/p>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432 \u0442\u0440\u0430\u0444\u0438\u043a\u0430<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"plaintext\"># \u0412\u043e\u0440\u043e\u043d\u043a\u0430 \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c my_multi_funnel %&gt;%   mutate(padding = ( 1 - pct_cumulative) \/ 2 ) %&gt;%   gather(key = \"variable\", value = \"val\", -moment_type, -firstSource) %&gt;%   filter(variable %in% c(\"pct_cumulative\", \"padding\")) %&gt;%   arrange(desc(variable)) %&gt;%   mutate(moment_type = factor(moment_type,                                levels = c(\"\u0421\u0442\u0440\u0430\u043d\u0438\u0446\u0430 \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0437\u0430\u043a\u0430\u0437\",                                          \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u043a \u043e\u043f\u043b\u0430\u0442\u0435\",                                          \"\u041f\u0435\u0440\u0435\u0445\u043e\u0434 \u0432 \u043a\u043e\u0440\u0437\u0438\u043d\u0443\",                                          \"\u041f\u0435\u0440\u0432\u044b\u0439 \u0432\u0438\u0437\u0438\u0442\")),          variable    = factor(variable,                               levels = c(\"pct_cumulative\",                                          \"padding\"))) %&gt;%   ggplot( aes(x = moment_type) ) +   geom_bar(aes(y = val, fill = variable),            stat='identity', position='stack') +   scale_fill_manual(values = c('coral', NA) ) +   geom_text(data = my_multi_funnel_df,             aes(y     = 1 \/ 2,                  label =paste(round(round(pct_cumulative * 100, 2)), '%')),             colour='tomato4',             fontface = \"bold\") +   coord_flip() +   theme(legend.position = 'none') +   labs(x='moment', y='volume') +   facet_grid(. ~ firstSource) <\/code><\/pre>\n<\/div>\n<\/div>\n<p>  <\/p>\n<p>\u041f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0439 \u043a\u043e\u0434 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e:<br \/>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/12d\/9a7\/631\/12d9a7631235b42f1081d996fa7eec62.png\" alt=\"\u0412\u043e\u0440\u043e\u043d\u043a\u0430 \u0432 \u0440\u0430\u0437\u0440\u0435\u0437\u0435 \u043a\u0430\u043d\u0430\u043b\u043e\u0432\"><\/p>\n<p>  <\/p>\n<p>\u041a\u0430\u043a \u043c\u044b \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0442\u0430\u043a\u0443\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0443?<\/p>\n<p>  <\/p>\n<ol>\n<li>\u0412 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 <code>first_visits<\/code> \u043c\u044b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043b\u0438 \u0441\u0442\u043e\u043b\u0431\u0435\u0446 <code>ym.s.lastTrafficSource<\/code> \u0432 <code>firstSource<\/code>.<\/li>\n<li>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>left_join<\/code> \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u043b\u0438 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043f\u0435\u0440\u0432\u044b\u0445 \u0432\u0438\u0437\u0438\u0442\u043e\u0432 \u0438 \u043e\u0431\u0449\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u043f\u043e \u043f\u043e\u043b\u044e <em>ym.s.clientID<\/em>. \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432 \u043e\u0431\u0449\u0435\u0439 \u0442\u0430\u0431\u043b\u0438\u0446\u0435 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e\u044f\u0432\u0438\u043b\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043e\u0431 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0435 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0438\u0437\u0438\u0442\u0430 \u0432 \u043f\u043e\u043b\u0435 <code>firstSource<\/code>.<\/li>\n<li>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>lapply<\/code> \u043c\u044b \u043f\u043e \u043e\u0447\u0435\u0440\u0435\u0434\u0438 \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043b\u0438 \u0432\u043e\u0440\u043e\u043d\u043a\u0443 \u043f\u043e \u043a\u0430\u043d\u0430\u043b\u0430\u043c ad, organic \u0438 direct. \u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0438\u043b\u0438 \u0432 \u043e\u0434\u043d\u0443 \u0442\u0430\u0431\u043b\u0438\u0446\u0443 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>bind_rows<\/code>.<\/li>\n<li>\u0412 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u043b\u0438 \u0441\u043b\u043e\u0439 <code>facet_grid(. ~ firstSource)<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0440\u0430\u0437\u0431\u0438\u043b \u0434\u0438\u0430\u0433\u0440\u0430\u043c\u043c\u0443 \u043d\u0430 \u0442\u0440\u0438 \u0447\u0430\u0441\u0442\u0438 \u043f\u043e \u043f\u043e\u043b\u044e <code>firstSource<\/code>.<\/li>\n<\/ol>\n<p>  <\/p>\n<h1 id=\"ps\">P.S.<\/h1>\n<p>  <\/p>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u0438\u043d\u043d\u043e\u0439. \u0415\u0441\u043b\u0438 \u0432\u044b \u0434\u043e\u0447\u0438\u0442\u0430\u043b\u0438 \u0435\u0451 \u0434\u043e \u043f\u0443\u043d\u043a\u0442\u0430 <strong>P.S.<\/strong> \u043d\u0430\u0432\u0435\u0440\u043d\u044f\u043a\u0430 \u0432\u044b \u0441\u0435\u0440\u044c\u0451\u0437\u043d\u043e \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442\u0435\u0441\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433\u043e\u043c, \u0438 \u0435\u0433\u043e \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u042f\u0437\u044b\u043a\u0430 R. \u0412 \u0442\u0430\u043a\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u0438\u0433\u043b\u0430\u0448\u0430\u044e \u0432\u0430\u0441 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043c\u043e\u0439 \u0442\u0435\u043b\u0435\u0433\u0440\u0430\u043c\u043c \u043a\u0430\u043d\u0430\u043b <a href=\"https:\/\/t.me\/R4marketing\">R4marketing<\/a>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043d\u0430 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0439 \u043e\u0441\u043d\u043e\u0432\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0443\u044e\u0442\u0441\u044f \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b \u043f\u043e \u044f\u0437\u044b\u043a\u0443 R \u0438 \u0435\u0433\u043e \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0437\u0430\u0434\u0430\u0447 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433\u0430.<\/p>\n<p>  <\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u0441\u043e\u0441\u0442\u043e\u0432\u043b\u044f\u044e\u0442:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0421\u0442\u0430\u0442\u044c\u0438;<\/li>\n<li>\u0414\u043e\u043a\u043b\u0430\u0434\u044b;<\/li>\n<li>\u041d\u043e\u0432\u043e\u0441\u0442\u0438;<\/li>\n<li>\u041f\u0440\u0438\u043c\u0435\u0440\u044b \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0437\u0430\u0434\u0430\u0447 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 R.<\/li>\n<\/ul>\n<p>  <\/p>\n<h1 id=\"zaklyuchenie\">\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  <\/p>\n<p>\u0420\u0435\u0437\u044e\u043c\u0438\u0440\u0443\u044f \u0432\u0441\u0451, \u0447\u0442\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u0441\u0442\u0430\u0442\u044c\u0435, \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0445 \u0432\u043e\u0440\u043e\u043d\u043e\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u044f\u0437\u044b\u043a\u0430 R \u0432\u0430\u043c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0448\u0430\u0433\u0438:<\/p>\n<p>  <\/p>\n<ol>\n<li>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0446\u0435\u043b\u0435\u0439 \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u043d\u0438\u0435 \u0432\u0441\u0435\u0445 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0441\u043e\u0431\u044b\u0442\u0438\u0439 \u043d\u0430 \u0432\u0430\u0448\u0435\u043c \u0441\u0430\u0439\u0442\u0435 \u0432 \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0435\u0442\u0440\u0438\u043a\u0435;<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u044f\u0437\u044b\u043a R \u0438 \u0441\u0440\u0435\u0434\u0443 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 RStudio;<\/li>\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b <code>rym<\/code>, <code>funneljoin<\/code> \u0438 <code>ggplot2<\/code>;<\/li>\n<li>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 <code>rym<\/code> \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>rym_get_logs()<\/code> \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u042f\u043d\u0434\u0435\u043a\u0441.\u041c\u0435\u0442\u0440\u0438\u043a\u0438;<\/li>\n<li>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 <code>funneljoin<\/code> \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u0438\u0435 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u0432 \u043d\u0443\u0436\u043d\u044b\u0445 \u0440\u0430\u0437\u0440\u0435\u0437\u0430\u0445.<\/li>\n<li>\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u0430\u043a\u0435\u0442\u0430 <code>ggplot2<\/code>.<\/li>\n<\/ol>\n<p>  <\/p>\n<p>\u041e\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043c\u0435\u0442\u043e\u0434 \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0431\u043e\u043b\u0435\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u0440\u043e\u0434\u0430\u0436, \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0432 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438, \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043e \u043f\u0440\u043e\u0434\u0430\u0436\u0430\u0445 \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u0432: CRM, 1\u0421 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0438\u0442\u044c \u0432\u043e\u0440\u043e\u043d\u043a\u0443 \u0434\u043e\u0431\u0430\u0432\u0438\u0432 \u0432 \u043d\u0435\u0451 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u0448\u0430\u0433\u0438: \u043e\u043f\u043b\u0430\u0442\u044b \u0437\u0430\u043a\u0430\u0437\u043e\u0432, \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u043e\u043a\u0443\u043f\u043a\u0438 \u0438 \u043a\u0440\u043e\u0441\u0441-\u043f\u0440\u043e\u0434\u0430\u0436\u0438.<\/p>\n<\/div>\n<p>               <script class=\"js-mediator-script\">!function(e){function t(t,n){if(!(n in e)){for(var r,a=e.document,i=a.scripts,o=i.length;o--;)if(-1!==i[o].src.indexOf(t)){r=i[o];break}if(!r){r=a.createElement(\"script\"),r.type=\"text\/javascript\",r.async=!0,r.defer=!0,r.src=t,r.charset=\"UTF-8\";var d=function(){var e=a.getElementsByTagName(\"script\")[0];e.parentNode.insertBefore(r,e)};\"[object Opera]\"==e.opera?a.addEventListener?a.addEventListener(\"DOMContentLoaded\",d,!1):e.attachEvent(\"onload\",d):d()}}}t(\"\/\/mediator.mail.ru\/script\/2820404\/\",\"_mediator\")}(window);<\/script>     <br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/462279\/\"> https:\/\/habr.com\/ru\/post\/462279\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<p>\u0410\u043d\u0430\u043b\u0438\u0437 \u0432\u043e\u0440\u043e\u043d\u043a\u0438 \u043f\u0440\u043e\u0434\u0430\u0436 \u2014 \u0442\u0438\u043f\u0438\u0447\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430 \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433\u0430, \u0438 \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043c\u0435\u0440\u0446\u0438\u0438. \u0421 \u0435\u0451 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435:<\/p>\n<p>  <\/p>\n<ul>\n<li>\u0412\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0430 \u043a\u0430\u043a\u043e\u043c \u0438\u0437 \u0448\u0430\u0433\u043e\u0432 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435 \u0432\u044b \u0442\u0435\u0440\u044f\u0435\u0442\u0435 \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432. <\/li>\n<li>\u041c\u043e\u0434\u0435\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u0431\u044a\u0451\u043c \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u0442\u043e\u043a\u0430 \u0432\u044b\u0440\u0443\u0447\u043a\u0438, \u0432 \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0448\u0430\u0433\u0430 \u043d\u0430 \u043f\u0443\u0442\u0438 \u043a \u043f\u043e\u043a\u0443\u043f\u043a\u0435. <\/li>\n<li>\u041e\u0446\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u0437\u0430\u043a\u0443\u043f\u0430\u0435\u043c\u043e\u0433\u043e \u043d\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0440\u0435\u043a\u043b\u0430\u043c\u043d\u044b\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430\u0445.<\/li>\n<li>\u041e\u0446\u0435\u043d\u0438\u0442\u044c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0445 \u0437\u0430\u044f\u0432\u043e\u043a \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0438\u0437 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432.<\/li>\n<\/ul>\n<p>  <\/p>\n<p>\u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 R \u0437\u0430\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API \u042f\u043d\u0434\u0435\u043a\u0441 \u041c\u0435\u0442\u0440\u0438\u043a\u0438, \u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0438 \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0430 \u0438\u0445 \u043e\u0441\u043d\u043e\u0432\u0435 \u0432\u043e\u0440\u043e\u043d\u043a\u0443.<\/p>\n<p>  <\/p>\n<p>\u041e\u0434\u043d\u043e \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432 \u044f\u0437\u044b\u043a\u0430 R \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u0440\u0430\u0441\u0448\u0438\u0440\u044f\u044e\u0449\u0438\u0445 \u0435\u0433\u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b. \u0412 \u0434\u0430\u043d\u043d\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u0430\u043a\u0435\u0442\u044b <code>rym<\/code>, <code>funneljoin<\/code> \u0438 <code>ggplot2<\/code>.<\/p>\n<p>  <\/p>\n<p>\u0421 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>rym<\/code> \u043c\u044b \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 Logs API, <code>funneljoin<\/code> \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0447\u0435\u0441\u043a\u043e\u0439 \u0432\u043e\u0440\u043e\u043d\u043a\u0438, \u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e <code>ggplot2<\/code> \u0432\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.<\/p>\n<p>  <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/903\/ac7\/75e\/903ac775e293295d418a628a673f73d6.jpg\" alt=\"image\"><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-293248","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/293248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=293248"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/293248\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=293248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=293248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=293248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}