小编daR*_*ght的帖子

根据用户ID和时差创建会话ID

我有一个类似的问题(创建一个"sessionID"基于"userID"和"timeStamp"的差异)创建一个'会话ID'; 虽然我的规格略有不同.也许这个解决方案在这篇文章中仍然很明显,但我无法将其应用到我的需求中 - 指出原始解决方案如何满足我的问题将是等效的.

data.table看起来像这样(下面有输入):

unique_visitor_id        datetime            
100                 2016-07-25 15:43:02      
100                 2016-08-15 15:35:16      
101                 2016-08-01 21:24:46      
101                 2016-08-13 05:32:27      
101                 2016-08-13 05:33:01      
101                 2016-08-13 05:33:37      
101                 2016-08-13 05:34:04      
101                 2016-08-13 05:37:42      
101                 2016-08-13 05:38:20      
102                 2016-09-15 17:28:00      
102                 2016-09-15 17:31:04      
103                 2016-07-18 21:19:07 
Run Code Online (Sandbox Code Playgroud)

NB: datetime被转换为lubridatevia中的日期对象ymd_hms(datetime)

我想要的是一个标识会话的新变量,它是一个简单的整数序列(不需要像原始问题那样包含visitorID) - 会话由访问者定义,只要记录<= 30m并在同一天内.因此,例如,前两行将是两个不同的会话:虽然它是相同的访问者,但时间差异> 30米.

上述数据的所需输出为:

unique_visitor_id        datetime            session_id
100                 2016-07-25 15:43:02           1
100                 2016-08-15 15:35:16           2
101                 2016-08-01 21:24:46           3
101                 2016-08-13 05:32:27           4
101                 2016-08-13 …
Run Code Online (Sandbox Code Playgroud)

r data.table

2
推荐指数
1
解决办法
502
查看次数

使用R / ggplot复制数据可视化

复制我在印刷媒体中看到的可视化ggplot2

背景
我一直在寻求使数据可视化更吸引人/特别是针对非数据人,这是我与之共事的大多数人(营销商,管理层等利益相关者)-我注意到,当可视化看起来像ggplot2他们通常以学术出版质量(标准美学)为前提,即他们无法理解并且不费吹灰之力,一开始就破坏了可视化的全部目的。但是,当它看起来更具图形性时(例如您可能会在网站或营销材料上看到的东西),他们通常会集中精力并尝试理解可视化效果。通常,我们最终会遇到来自这些类型的可视化的最有趣的讨论,因此这是我的最终目标。

可视化我想在R / ggplot2中复制的vis

这是我在一些按地理区域划分的网络流量的设备营销小册子上看到的,尽管实际上有点忙碌和不清楚,但它比我在标准中创建的类似堆积条形图更好地产生了共鸣-我丝毫没有知道如何在其中复制类似内容ggplot2,任何尝试将不胜感激!这是在中使用的一些示例整洁数据data.table

structure(list(country = c("Argentina", "Argentina", "Argentina", 
                       "Brazil", "Brazil", "Brazil", "Canada",
                       "Canada", "Canada", "China", "China",
                       "China", "Japan", "Japan", "Japan", "Spain",
                       "Spain", "Spain", "UK", "UK", "UK", "USA",
                       "USA", "USA"), 
           device_type = structure(c(1L, 2L, 3L, 1L, 2L, 3L, 1L, 
                                     2L, 3L, 1L, 2L, 3L, 1L, 2L, 
                                     3L, 1L, 2L, 3L, 1L, 2L, 3L, 
                                     1L, 2L, 3L), 
                                   class = "factor", 
                                   .Label = c("desktop", 
                                              "mobile", 
                                              "multi")), 
           proportion = c(0.37, 0.22, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

2
推荐指数
1
解决办法
538
查看次数

使用`purrr`将列表列表中的数据提取到自己的`data.frame`中

代表性样本数据(清单清单):

l <- list(structure(list(a = -1.54676469632688, b = "s", c = "T", 
d = structure(list(id = 5L, label = "Utah", link = "Asia/Anadyr", 
    score = -0.21104594634643), .Names = c("id", "label", 
"link", "score")), e = 49.1279871269422), .Names = c("a", 
"b", "c", "d", "e")), structure(list(a = -0.934821052832427, 
b = "k", c = "T", d = list(structure(list(id = 8L, label = "South Carolina", 
    link = "Pacific/Wallis", score = 0.526540892113734, externalId = -6.74354377676955), .Names = c("id", 
"label", "link", "score", "externalId")), structure(list(
    id = 9L, …
Run Code Online (Sandbox Code Playgroud)

r list dplyr purrr

1
推荐指数
1
解决办法
2025
查看次数

标签 统计

r ×3

data.table ×1

dplyr ×1

ggplot2 ×1

list ×1

purrr ×1