①某系统通过用户视频点播的基础数据如评分、播放、快进等,分析计算出用户可能喜爱的影片,并为他提供定制化的推荐
②某网站通过追踪用户在其网络的行为,识别用户在它的网络中的好友,从而给出新的好友推荐建议
③某交通流量数据公司依靠分析历史和实时路况数据,能给出及时的路况报告,以帮助司机避开正在堵车的路段,并且帮他们提前规划好行程
④某保险公司天都会对美国境内超过100万个地点、未来两年的天气情况进行超过1万次模拟,而后将根系结构和土壤孔隙度的相关数据,与模拟结果相结合,为成千上万的农民提供农作物保险
数组元素 |
数组元素的含义 |
a(i) |
a(1)到a(10)依次存储1号顾客购买商品1~商品10的记录; a(11)至a(20)依次存储号2顾客购买商品1~商品10的记录;依次类推。 数组a的某个元素的值为1,则表示某位顾客购买了某种商品,若为0则表示没有购买该种商品。如a(6)=1表示1号顾客购买了商品6,a(6)=0表示未购买。 |
b(i) |
dsj(1)~dsj(9)依次存储商品1与商品2~商品10的关联次数; dsj(10)~dsj(17)依次存储商品2与商品3~商品10的关联次数:依次类推。 如dsj(5)=2表示商品1与商品6被同时购买过2次; 如dsj(45)=4表示商品9与商品10被同时购买过4次。 数组dsj中,若dsj(45)的值最大,则表示商品9和商品10的关联次数最多。 |
小王按照上述算法设计了VB程序,统计了20个用户购买10种商品之间的关联性,VB程序如下,部分界面如图所示。
Private Sub Cmd1_Click( )
Dim a(1To200) As Integer '各个用户原始的购买记录
Dim dsj (1To45) As Integer '统计商品之间的关联次数
Dim i As Integer, t As Integer, nc As Integer, j As Integer, max As Integer
'数组a读入数据并在列表框分行输出,代码略
For i=1 To 20'20个用户
t=1
For j=1 To 9'10个商品,共45种组合
For k=j+1 To 10
m=(i-1)*10
If Then dsj(t)=dsj(t)+1
Next k
Next j
Next i
max=0
For i=1 To 45
If Then
max=dsj(i)
maxi=i
End If
Next i
t=9:nc=1
Do While maxi>t
t=t-1
nc=nc+1
Loop
Text1.Text="关联最多的是商品"+Str(nc)+Str(maxi+nc)+":"+Str(max)+"次"
End Sub