我有263个用户的数据集。 它具有以下数据框架结构:
userID bookmarkID tagID value
1 52 101 1
1 114 154 1
2 127 14 1
4 114 4 1
对于每个用户,我通过以下等式计算表示频率的变量的值: count()/(bookmarkIDs的数量* tagID的数量)。我得到了这些值: 从1到265的数字只是用户ID,用户不是订购的。
1 2 3 4 5 6
0.0003716331 0.0005655286 0.0001777376 0.0003070012 0.0019389552 0.0002746853
...
...
259 260 261 262 263 264
0.0003393172 0.0006463184 0.0002100535 0.0002100535 0.0001777376 0.0004685808
265
0.0001777376
使用以下R代码:
#each user: number of tensor elements which >0 / (num of tags* number of items)
d.file <-
"E:/My_Projects/Bitbucket/TylerRecommender/src/test/resources/DAI_LAbor/p-core of level 12/dataFilePathBeforeTensorDecompositionForTraining80percent.txt"
df<-read.table(d.file,sep="\t",header=T)
itemsize<-length(unique(df$bookmarkID))
tagsize<-length(unique(df$tagID))
itemtagmatrixsize<-itemsize*tagsize
userid.bag<-df$userID
user.tas.count<-table(userid.bag)
dens.tas<-density(user.tas.count/itemtagmatrixsize)
plot(dens.tas, col="red")
d.file2 <-
"E:/My_Projects/Bitbucket/TylerRecommender/src/test/resources/DAI_LAbor/p-core of level 12/~sample_tensor_afterDecomposition_Condensed.example.txt"
df2<-read.table(d.file2,sep="\t",header=T)
lines(density(table(df2$userID)/itemtagmatrixsize), col="blue")
现在我的问题是如何绘制图表以最好地描述用户的频率分布?
我在R中使用核密度估计函数密度()绘制频率值&#39;概率分布。 (这是我的目标吗?)
多了,我有另一个数据集,其频率值比前一个(蓝色)高得多,下图中红线与前一个数据集相关:
但第一个数据集的红线变得完全平坦,这毫无意义。这是为什么?是因为默认选择带宽吗?是否可以在同一图表中绘制它们并使它们看起来正常? 谢谢!