这是文本里内容的格式,已经分过词,去掉了停用词,计算了词组的权重,现在想将这些词在文本的位置存在一个数组中,相当于建立一个VSM空间模型,最后用于聚类分析。
注意,有很多这样的文本,如图:
要把所有的文本里的词组的位置记录下来。每一个文本代表一个用户。还有我不知道是建立一维数组好还是二维数组好一些。或者说是用Map这样的类型
希望大神能贴出代码来
用Map也可以,用二维数组也可以。
无非就是split放入数组,然后用一个整数变量,循环,将这个变量和每一个词语配对,存入你的结果表。
用map存储数据吧.
创建文本对象 po (user), 遍历 文本.
for(){
User u= new User();
2. 创建用户的po 对象 . 用以存储文本内容信息.
private List info = new ArrayList();
u.setPo(info);
3.之后进行储存到map集合中.
mao.put("文本名称",u);
}
有什么还不懂的接着问吧.
首先词组很多,可以用hash字典设计,这样查找每个词组会很快。
其次,每个词组可能会出现多次,即多个 {文件、位置}的组合。只需在该词组下面挂{文件、位置}链表即可。
两种数据结构
1,词组的hash字典
2,{文件、位置}pool。