我有一个示例数据集,如下所示:
tc <- textConnection('
path touchpoint time
abc A 1
abc A 2
abc B 3
abc C 4
def A 2
def B 3
def D 4
def C 5
def D 6
ghi A 1
ghi A 2
ghi A 3
ghi C 4
jkl A 5
jkl A 6
jkl B 7
jkl C 8
mno B 1
mno A 2
mno A 3
mno C 4
pqr A 1
pqr C 2
test "touchpoint A" 1
test "touchpoint-B" 2
')
paths <- read.table(tc, header=TRUE)
我想创建路径概览,并计算路径出现的次数。是touchpoints
形成path
. 每个path
都由一个字符(或一组字符)标识,该字符在列中说明path
。例如path
abc 包含接触点 A、A、B 和 C。作为输出,我想了解所有不同接触点的路径及其计数。
这个输出表没有固定的宽度,因为一条路径可以有大量不同的接触点。因此,我想在第一列中有计数。另外两个限制是:
- 路径是根据时间创建的,时间最短的接触点应始终排在第一位。
- 如果随后有来自同一实例的接触点(所以 AA),那么在概述中它应该显示为 A,或者更理想的是 A(2x)
我真的不知道从哪里开始这个..
该示例的预期输出为:
freq 1 2 3 4 5
2 A B C
2 A C
1 A B D C D
1 B A C
1 "touchpoint A" "touchpoint-B"
更理想的输出是:
freq 1 2 3 4 5
2 A (2x) B C
1 A B D C D
1 A (3x) C
1 B A (2x) C
1 A (2x) C
1 "touchpoint A" "touchpoint-B"
选择列名 1 到 N 来指示接触点是第一个、第二个还是第 N 个。请注意,在“理想”输出中,由于提供的第一个输出的旅程ghi
和pqr
提供的第一个输出的旅程相同(AAC 将在此处变为 AC),因此会呈现更多旅程。