当前位置: 首页>>代码示例>>Java>>正文


Java NamedVector类代码示例

本文整理汇总了Java中org.apache.mahout.math.NamedVector的典型用法代码示例。如果您正苦于以下问题:Java NamedVector类的具体用法?Java NamedVector怎么用?Java NamedVector使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


NamedVector类属于org.apache.mahout.math包,在下文中一共展示了NamedVector类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: doTestVectorWritableEquals

import org.apache.mahout.math.NamedVector; //导入依赖的package包/类
private static void doTestVectorWritableEquals(Vector v) throws IOException {
  Writable vectorWritable = new VectorWritable(v);
  VectorWritable vectorWritable2 = new VectorWritable();
  writeAndRead(vectorWritable, vectorWritable2);
  Vector v2 = vectorWritable2.get();
  if (v instanceof NamedVector) {
    assertTrue(v2 instanceof NamedVector);
    NamedVector nv = (NamedVector) v;
    NamedVector nv2 = (NamedVector) v2;
    assertEquals(nv.getName(), nv2.getName());
    assertEquals("Victor", nv.getName());
  }
  assertEquals(v, v2);
}
 
开发者ID:SiddharthMalhotra,项目名称:sPCA,代码行数:15,代码来源:MahoutCompatibilityTest.java

示例2: loadVectors

import org.apache.mahout.math.NamedVector; //导入依赖的package包/类
private static Matrix loadVectors(String vectorPathString, Configuration conf)
  throws IOException {
  Path vectorPath = new Path(vectorPathString);
  FileSystem fs = vectorPath.getFileSystem(conf);
  List<Path> subPaths = Lists.newArrayList();
  if (fs.isFile(vectorPath)) {
    subPaths.add(vectorPath);
  } else {
    for (FileStatus fileStatus : fs.listStatus(vectorPath, PathFilters.logsCRCFilter())) {
      subPaths.add(fileStatus.getPath());
    }
  }
  List<Pair<Integer, Vector>> rowList = Lists.newArrayList();
  int numRows = Integer.MIN_VALUE;
  int numCols = -1;
  boolean sequentialAccess = false;
  for (Path subPath : subPaths) {
    for (Pair<IntWritable, VectorWritable> record
        : new SequenceFileIterable<IntWritable, VectorWritable>(subPath, true, conf)) {
      int id = record.getFirst().get();
      Vector vector = record.getSecond().get();
      if (vector instanceof NamedVector) {
        vector = ((NamedVector)vector).getDelegate();
      }
      if (numCols < 0) {
        numCols = vector.size();
        sequentialAccess = vector.isSequentialAccess();
      }
      rowList.add(Pair.of(id, vector));
      numRows = Math.max(numRows, id);
    }
  }
  numRows++;
  Vector[] rowVectors = new Vector[numRows];
  for (Pair<Integer, Vector> pair : rowList) {
    rowVectors[pair.getFirst()] = pair.getSecond();
  }
  return new SparseRowMatrix(numRows, numCols, rowVectors, true, !sequentialAccess);

}
 
开发者ID:saradelrio,项目名称:Chi-FRBCS-BigDataCS,代码行数:41,代码来源:InMemoryCollapsedVariationalBayes0.java

示例3: writeVector

import org.apache.mahout.math.NamedVector; //导入依赖的package包/类
@Override
public void writeVector(MySparseVector vector) throws IOException {
    String docIdName = String.format("%09d", ++docId); //mahout stores doc ids as Text
    RandomAccessSparseVector vec = new RandomAccessSparseVector(termcount);
    for (int i = 0; i < vector.indices.size(); i++)
        vec.setQuick(vector.indices.get(i), vector.values.get(i));

    NamedVector nv = new NamedVector(vec, docIdName);
    tfidfWriter.append(new Text(docIdName), new VectorWritable(nv));
}
 
开发者ID:project-asap,项目名称:IReS-Platform,代码行数:11,代码来源:MahoutOutput.java

示例4: clusterOutput

import org.apache.mahout.math.NamedVector; //导入依赖的package包/类
public static void clusterOutput(Configuration conf, Path path) {
		try {
			BufferedWriter bw;
			FileSystem fs = FileSystem.get(conf);

			SequenceFile.Reader reader = null;
			reader = new SequenceFile.Reader(fs, path, conf);

			// 将分组信息写到文件uidOfgrp.txt,每行格式为 uid \t groupID
			bw = new BufferedWriter(new FileWriter(new File("C:\\Users\\Hk\\Desktop\\ClusterPointsInfo.txt")));
			HashMap<String, Integer> clusterIds;
			clusterIds = new HashMap<String, Integer>(120);
			IntWritable key = new IntWritable();
			WeightedPropertyVectorWritable value = new WeightedPropertyVectorWritable();
//			WeightedVectorWritable value = new WeightedVectorWritable();
			while (reader.next(key, value)) {
				NamedVector vector = (NamedVector) value.getVector();
				// 得到Vector的Name标识
				String vectorName = vector.getName();
				System.out.println(vectorName + "\t" + key.toString());
				bw.write(vectorName + "\t" + key.toString() + "\n");
				// 更新每个group的大小
				if (clusterIds.containsKey(key.toString())) {
					clusterIds.put(key.toString(), clusterIds.get(key.toString()) + 1);
				} else
					clusterIds.put(key.toString(), 1);
			}
			bw.flush();
			reader.close();
			// 将每个group的大小,写入grpSize文件中
			bw = new BufferedWriter(new FileWriter(new File("C:\\Users\\Hk\\Desktop\\ClusterPointsSize.txt")));
			Set<String> keys = clusterIds.keySet();
			for (String k : keys) {
				System.out.println(k + " " + clusterIds.get(k));
				bw.write(k + " " + clusterIds.get(k) + "\n");
			}
			bw.flush();
			bw.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
 
开发者ID:hejy12,项目名称:newsRecommender,代码行数:43,代码来源:MatrixAndCluster.java


注:本文中的org.apache.mahout.math.NamedVector类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。