package ca.pfv.spmf.algorithms.sequential_rules.rulegrowth;
/* This file is copyright (c) 2008-2013 Philippe Fournier-Viger
*
* This file is part of the SPMF DATA MINING SOFTWARE
* (http://www.philippe-fournier-viger.com/spmf).
*
* SPMF is free software: you can redistribute it and/or modify it under the
* terms of the GNU General Public License as published by the Free Software
* Foundation, either version 3 of the License, or (at your option) any later
* version.
*
* SPMF is distributed in the hope that it will be useful, but WITHOUT ANY
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
* A PARTICULAR PURPOSE. See the GNU General Public License for more details.
* You should have received a copy of the GNU General Public License along with
* SPMF. If not, see .
*/
import java.util.HashMap;
import java.util.Map;
/**
* This class represents the SparseMatrix structure used by ERMiner.
*
* @see AlgoERMiner
* @author Philippe Fournier-Viger
*/
public class SparseMatrix {
// item i, item j , count of i,j appearing together
Map> matrix = new HashMap>();
public SparseMatrix() {
}
public void increaseCountOfPair(int i, int j) {
// IMPORTANT
if(i < j) {
return;
}
Map map = matrix.get(i);
if(map == null) {
map = new HashMap();
map.put(j, 1);
matrix.put(i, map);
}else {
Integer count = map.get(j);
if(count == null) {
map.put(j, 1);
}else {
map.put(j, count+1);
}
}
}
public int getCount(int i, int j) {
Map map = matrix.get(i);
if(map == null) {
return 0;
}
Integer count = map.get(j);
if(count == null) {
return 0;
}
return count;
}
public Map> getMatrix() {
return matrix;
}
}
Ads help maintain this website.