List of usage examples for org.apache.commons.math.stat.descriptive DescriptiveStatistics DescriptiveStatistics
public DescriptiveStatistics()
From source file:playground.johannes.socialnetworks.snowball2.sim.postprocess.ConfidenceInterval.java
/** * @param args/*from ww w.j a v a2 s .c om*/ * @throws IOException */ public static void main(String[] args) throws IOException { String rootDir = args[0]; int dumpStart = Integer.parseInt(args[1]); int dumpEnd = Integer.parseInt(args[2]); ; int dumpStep = Integer.parseInt(args[3]); String constParamKey = args[4]; int constParam = Integer.parseInt(args[5]); String property = args[6]; String dumpProperty = args[7]; String output = args[8]; final double mean = Double.parseDouble(args[9]); double confProba = Double.parseDouble(args[10]); String mode = args[11]; TIntObjectHashMap<TIntDoubleHashMap> table = new TIntObjectHashMap<TIntDoubleHashMap>(); SortedSet<Integer> dumpKeys = new TreeSet<Integer>(); for (int dumpKey = dumpStart; dumpKey <= dumpEnd; dumpKey += dumpStep) { TIntDoubleHashMap row = new TIntDoubleHashMap(); BufferedReader valueReader; BufferedReader dumpReader; if (constParamKey.equalsIgnoreCase("alpha")) { String path = String.format("%1$s/seed.%2$s/alpha.%3$s/%4$s.txt", rootDir, dumpKey, constParam, property); valueReader = new BufferedReader(new FileReader(path)); System.out.println("Loading file " + path); path = String.format("%1$s/seed.%2$s/alpha.%3$s/%4$s.avr.txt", rootDir, dumpKey, constParam, dumpProperty); dumpReader = new BufferedReader(new FileReader(path)); System.out.println("Loading file " + path); } else if (constParamKey.equalsIgnoreCase("seed")) { String path = String.format("%1$s/seed.%2$s/alpha.%3$s/%4$s.txt", rootDir, constParam, dumpKey, property); valueReader = new BufferedReader(new FileReader(path)); System.out.println("Loading file " + path); path = String.format("%1$s/seed.%2$s/alpha.%3$s/%4$s.avr.txt", rootDir, constParam, dumpKey, dumpProperty); dumpReader = new BufferedReader(new FileReader(path)); System.out.println("Loading file " + path); } else throw new IllegalArgumentException( String.format("Constant parameter %1$s unknown.", constParamKey)); String header = valueReader.readLine(); String keys[] = header.split("\t"); int cols = keys.length; String valueLine; Map<String, TDoubleArrayList> matrix = new HashMap<String, TDoubleArrayList>(); while ((valueLine = valueReader.readLine()) != null) { String[] tokens = valueLine.split("\t"); for (int i = 0; i < cols; i++) { TDoubleArrayList list = matrix.get(keys[i]); if (list == null) { list = new TDoubleArrayList(); matrix.put(keys[i], list); } list.add(Double.parseDouble(tokens[i])); } } String dumpLine; Map<String, String> dumpMapping = new HashMap<String, String>(); while ((dumpLine = dumpReader.readLine()) != null) { String[] tokens = dumpLine.split("\t"); dumpMapping.put(tokens[0], tokens[1]); } for (Entry<String, TDoubleArrayList> entry : matrix.entrySet()) { DescriptiveStatistics stats = new DescriptiveStatistics(); double vals[] = entry.getValue().toNativeArray(); for (double val : vals) { if (!Double.isNaN(val)) { double relerr; if (mode.equals("abs")) { relerr = Math.abs((val - mean) / mean); } else { relerr = (val - mean) / mean; } stats.addValue(relerr); } } if (stats.getN() < 50) { System.err.println("Less than 50 samples. Ignoring dump."); } else { double conf; if (mode.equals("abs")) conf = stats.getPercentile(confProba); else if (mode.equals("pos")) { confProba = (100 - confProba) / 2.0; conf = stats.getPercentile(100 - confProba); } else if (mode.equals("neg")) { confProba = (100 - confProba) / 2.0; conf = stats.getPercentile(confProba); } else { throw new IllegalArgumentException(String.format("Mode %1$s unknown.", mode)); } // int key = Integer.parseInt(keys[i]); String keyStr = entry.getKey(); if (!dumpMapping.get(keyStr).equals("null")) { int key = (int) Double.parseDouble(dumpMapping.get(keyStr)); row.put(key, conf); dumpKeys.add(key); } else { System.err.println("Null key"); } } } table.put(dumpKey, row); } write(table, output, dumpKeys); }
From source file:playground.johannes.socialnetworks.snowball2.sim.postprocess.PercentileTest.java
/** * @param args/*from ww w . ja va 2s. co m*/ */ public static void main(String[] args) { DescriptiveStatistics stats = new DescriptiveStatistics(); for (int i = 0; i < 20; i++) { stats.addValue(i); } System.out.println(stats.getPercentile(10)); }
From source file:playground.johannes.socialnetworks.survey.ivt2009.analysis.deprecated.DistanceSocioAttribute.java
@Override public void analyze(Graph g, Map<String, DescriptiveStatistics> stats) { try {// ww w .j av a 2 s.c o m SocialGraph graph = (SocialGraph) g; Distance dist = new ObservedDistance(); AcceptanceProbability acc = new AcceptanceProbability(); Degree degree = new ObservedDegree(); Discretizer discretizer = new LinearDiscretizer(1.0); /* * male */ Set<SocialVertex> vertices = new HashSet<SocialVertex>(); for (SocialVertex vertex : graph.getVertices()) { if ("m".equalsIgnoreCase(vertex.getPerson().getPerson().getSex())) vertices.add(vertex); } DescriptiveStatistics ds = new DescriptiveStatistics(); ds.addValue(ResponseRate.responseRate((Set) vertices)); stats.put("alpha_male", ds); Distribution distr = dist.distribution(vertices); Distribution.writeHistogram(distr.absoluteDistributionLog2(1000), getOutputDirectory() + "/d_male_txt"); ds = new DescriptiveStatistics(); ds.addValue(distr.mean()); stats.put("d_mean_male", ds); DescriptiveStatistics dStats = acc.distribution(vertices, choiceSet); TDoubleDoubleHashMap hist = Histogram.createHistogram(dStats, new LinearDiscretizer(1000.0), false); TXTWriter.writeMap(hist, "d", "p", getOutputDirectory() + "/p_acc_male.txt"); // Distribution.writeHistogram(dStats.absoluteDistributionLog2(1000), getOutputDirectory()+"/p_acc_male.txt"); DescriptiveStatistics kDistr = degree.statistics(vertices); stats.put("k_male", kDistr); Distribution.writeHistogram(Histogram.createHistogram(kDistr, new LinearDiscretizer(1.0), false), getOutputDirectory() + "/k_male.txt"); System.out.println("Male: " + kDistr.getValues().length); /* * female */ vertices = new HashSet<SocialVertex>(); for (SocialVertex vertex : graph.getVertices()) { if ("f".equalsIgnoreCase(vertex.getPerson().getPerson().getSex())) vertices.add(vertex); } ds = new DescriptiveStatistics(); ds.addValue(ResponseRate.responseRate((Set) vertices)); stats.put("alpha_female", ds); distr = dist.distribution(vertices); Distribution.writeHistogram(distr.absoluteDistributionLog2(1000), getOutputDirectory() + "/d_female_txt"); ds = new DescriptiveStatistics(); ds.addValue(distr.mean()); stats.put("d_femean_male", ds); dStats = acc.distribution(vertices, choiceSet); hist = Histogram.createHistogram(dStats, new LinearDiscretizer(1000.0), false); TXTWriter.writeMap(hist, "d", "p", getOutputDirectory() + "/p_acc_female.txt"); // Distribution.writeHistogram(acc.distribution(vertices, choiceSet).absoluteDistributionLog2(1000), getOutputDirectory()+"/p_acc_female.txt"); kDistr = degree.statistics(vertices); stats.put("k_female", kDistr); Distribution.writeHistogram(Histogram.createHistogram(kDistr, new LinearDiscretizer(1.0), false), getOutputDirectory() + "/k_female.txt"); System.out.println("Female: " + kDistr.getValues().length); /* * edu */ // Education edu = new Education(); // edu.socioMatrix(graph); // for(String att : edu.getAttributes()) { // vertices = new HashSet<SocialVertex>(); // for (SocialVertex vertex : graph.getVertices()) { // if (att.equalsIgnoreCase(vertex.getPerson().getEducation())) // vertices.add(vertex); // } // // stats.put("alpha_edu"+att, ResponseRate.responseRate((Set) vertices)); // // distr = dist.distribution(vertices); // Distribution.writeHistogram(distr.absoluteDistributionLog2(1000), getOutputDirectory() + "/d_edu"+att+".txt"); // stats.put("d_mean_edu"+att, distr.mean()); // // dStats = acc.distribution(vertices, choiceSet); // hist = Histogram.createHistogram(dStats, new LinearDiscretizer(1000.0), false); // TXTWriter.writeMap(hist, "d", "p", getOutputDirectory()+"/p_acc_edu"+att+".txt"); //// Distribution.writeHistogram(acc.distribution(vertices, choiceSet).absoluteDistributionLog2(1000), getOutputDirectory()+"/p_acc_edu"+att+".txt"); // // kDistr = degree.distribution(vertices); // stats.put("k_mean_edu"+att, kDistr.getMean()); // Distribution.writeHistogram(Histogram.createHistogram(kDistr, new LinearDiscretizer(1.0), false), getOutputDirectory() + "/k_edu"+att+".txt"); // // System.out.println("Edu"+att+": " + kDistr.getValues().length); // } /* * income */ Map<Integer, Set<SocialVertex>> incomes = new HashMap<Integer, Set<SocialVertex>>(); for (SocialVertex vertex : graph.getVertices()) { Set<SocialVertex> set = incomes.get(vertex.getPerson().getIncome()); if (set == null) { set = new HashSet<SocialVertex>(); incomes.put(vertex.getPerson().getIncome(), set); } set.add(vertex); } for (Entry<Integer, Set<SocialVertex>> entry : incomes.entrySet()) { vertices = entry.getValue(); distr = dist.distribution(vertices); String att = String.valueOf(entry.getKey()); Distribution.writeHistogram(distr.absoluteDistributionLog2(1000), getOutputDirectory() + "/d_income" + att + ".txt"); ds = new DescriptiveStatistics(); ds.addValue(distr.mean()); stats.put("d_mean_income" + att, ds); dStats = acc.distribution(vertices, choiceSet); hist = Histogram.createHistogram(dStats, new LinearDiscretizer(1000.0), false); TXTWriter.writeMap(hist, "d", "p", getOutputDirectory() + "/p_acc_income" + att + ".txt"); // Distribution.writeHistogram(acc.distribution(vertices, choiceSet).absoluteDistributionLog2(1000), getOutputDirectory()+"/p_acc_income"+att+".txt"); kDistr = degree.statistics(vertices); stats.put("k_income" + att, kDistr); Distribution.writeHistogram(Histogram.createHistogram(kDistr, discretizer, false), getOutputDirectory() + "/k_income" + att + ".txt"); System.out.println("Income" + att + ": " + kDistr.getValues().length); } /* * civil status */ Map<String, Set<SocialVertex>> civilstatus = new HashMap<String, Set<SocialVertex>>(); for (SocialVertex vertex : graph.getVertices()) { Set<SocialVertex> set = civilstatus.get(vertex.getPerson().getCiviStatus()); if (set == null) { set = new HashSet<SocialVertex>(); civilstatus.put(vertex.getPerson().getCiviStatus(), set); } set.add(vertex); } for (Entry<String, Set<SocialVertex>> entry : civilstatus.entrySet()) { vertices = entry.getValue(); distr = dist.distribution(vertices); String att = entry.getKey(); Distribution.writeHistogram(distr.absoluteDistributionLog2(1000), getOutputDirectory() + "/d_cstatus" + att + ".txt"); ds = new DescriptiveStatistics(); ds.addValue(distr.mean()); stats.put("d_mean_cstatus" + att, ds); dStats = acc.distribution(vertices, choiceSet); hist = Histogram.createHistogram(dStats, new LinearDiscretizer(1000.0), false); TXTWriter.writeMap(hist, "d", "p", getOutputDirectory() + "/p_acc_cstatus" + att + ".txt"); // Distribution.writeHistogram(acc.distribution(vertices, choiceSet).absoluteDistributionLog2(1000), getOutputDirectory()+"/p_acc_cstatus"+att+".txt"); kDistr = degree.statistics(vertices); stats.put("k_cstatus" + att, kDistr); Distribution.writeHistogram(Histogram.createHistogram(kDistr, discretizer, false), getOutputDirectory() + "/k_cstatus" + att + ".txt"); System.out.println("CivStatus" + att + ": " + kDistr.getValues().length); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
From source file:playground.johannes.socialnetworks.survey.ivt2009.analysis.Frequency.java
public DescriptiveStatistics statistics(Set<SocialEdge> edges) { DescriptiveStatistics stats = new DescriptiveStatistics(); for (SocialEdge edge : edges) { stats.addValue(edge.getFrequency()); }/* w w w .j a v a 2 s. com*/ return stats; }
From source file:playground.johannes.socialnetworks.survey.ivt2009.analysis.SeedConnectionTask.java
@Override public void analyze(Graph graph, Map<String, DescriptiveStatistics> stats) { Set<SampledVertex> seedSet = (Set<SampledVertex>) SnowballPartitions .createSampledPartition((Set<? extends SampledVertex>) graph.getVertices(), 0); List<SampledVertex> seeds = new ArrayList<SampledVertex>(seedSet); AdjacencyMatrix<SampledVertex> y = new AdjacencyMatrix<SampledVertex>(graph); int[] seedIndices = new int[seeds.size()]; for (int i = 0; i < seeds.size(); i++) { seedIndices[i] = y.getIndex(seeds.get(i)); }/* w ww. j ava 2 s . c o m*/ int[][] connects = new int[seeds.size()][seeds.size()]; int[][] directs = new int[seeds.size()][seeds.size()]; Set<TIntArrayList> paths = new HashSet<TIntArrayList>(); Dijkstra dijkstra = new Dijkstra(y); int[] ids = new int[seeds.size()]; for (int i = 0; i < seeds.size(); i++) { int i_idx = y.getIndex(seeds.get(i)); ids[i] = i_idx; for (int j = i + 1; j < seeds.size(); j++) { int j_idx = y.getIndex(seeds.get(j)); dijkstra.run(i_idx, j_idx); TIntArrayList path = dijkstra.getPath(i_idx, j_idx); if (path != null) { connects[i][j] = path.size(); connects[j][i] = path.size(); path.insert(0, i_idx); paths.add(path); boolean indirect = false; for (int k = 1; k < path.size() - 1; k++) { SampledVertex v = y.getVertex(path.get(k)); if (v.getSeed() != seeds.get(i) && v.getSeed() != seeds.get(j)) { indirect = true; break; } } if (!indirect) { directs[i][j] = 1; directs[j][i] = 1; } } else { connects[i][j] = -1; connects[j][i] = -1; } } } int nPaths = 0; int nDirectPaths = 0; int total = 0; int totalDirect = 0; for (int i = 0; i < connects.length; i++) { for (int j = i + 1; j < connects.length; j++) { if (connects[i][j] > 0) { total += connects[i][j]; nPaths++; if (directs[i][j] > 0) { totalDirect += connects[i][j]; nDirectPaths++; } } } } try { dumpPaths(paths, y); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } DescriptiveStatistics ds = new DescriptiveStatistics(); ds.addValue(new Double(nPaths)); stats.put(NUM_CONNECTS, ds); ds = new DescriptiveStatistics(); ds.addValue(nDirectPaths); stats.put("n_directPath", ds); ds = new DescriptiveStatistics(); ds.addValue(total / (double) nPaths); stats.put("apl", ds); ds = new DescriptiveStatistics(); ds.addValue(totalDirect / (double) nDirectPaths); stats.put("apl_d", ds); if (getOutputDirectory() != null) { try { BufferedWriter writer = new BufferedWriter( new FileWriter(String.format("%1$s/seedconnects.txt", getOutputDirectory()))); for (int i = 0; i < connects.length; i++) { writer.write("\t&"); SampledVertex v = y.getVertex(ids[i]); SampledVertexDecorator<SocialVertex> vertex = (SampledVertexDecorator<SocialVertex>) v; writer.write(String.valueOf(vertex.getDelegate().getPerson().getId().toString())); } writer.write("\\\\"); writer.newLine(); for (int i = 0; i < connects.length; i++) { SampledVertex v = y.getVertex(ids[i]); SampledVertexDecorator<SocialVertex> vertex = (SampledVertexDecorator<SocialVertex>) v; writer.write(String.valueOf(vertex.getDelegate().getPerson().getId().toString())); for (int j = 0; j < connects.length; j++) { writer.write("\t&"); if (connects[i][j] < 0) writer.write("-"); else { if (directs[i][j] > 0) { writer.write("\\bf{"); writer.write(String.valueOf(connects[i][j])); writer.write("}"); } else { writer.write(String.valueOf(connects[i][j])); } } } writer.write("\\\\"); writer.newLine(); } writer.close(); TDoubleArrayList xVals = new TDoubleArrayList(); TDoubleArrayList yVals = new TDoubleArrayList(); TDoubleArrayList xVals2 = new TDoubleArrayList(); TDoubleArrayList yVals2 = new TDoubleArrayList(); for (int i = 0; i < connects.length; i++) { SampledVertex v = y.getVertex(ids[i]); int k = v.getNeighbours().size(); int count = 0; int length = 0; for (int j = 0; j < connects.length; j++) { if (connects[i][j] > 0) { count++; length += connects[i][j]; } } xVals.add(k); yVals.add(count); if (length > 0) { xVals2.add(k); yVals2.add(length / (double) count); } } TDoubleDoubleHashMap map = Correlations.mean(xVals.toNativeArray(), yVals.toNativeArray()); TXTWriter.writeMap(map, "k", "connects", String.format("%1$s/connects_k.txt", getOutputDirectory())); map = Correlations.mean(xVals2.toNativeArray(), yVals2.toNativeArray()); TXTWriter.writeMap(map, "k", "closeness", String.format("%1$s/closeness_k.txt", getOutputDirectory())); } catch (IOException e) { e.printStackTrace(); } } }
From source file:playground.johannes.socialnetworks.survey.ivt2009.graph.io.GraphBuilder.java
private void loadSociogramData(Collection<VertexRecord> records, SQLDumpReader sqlData) { logger.info("Loading sociogram data..."); Map<String, VertexRecord> map = sqlData.getFullAlterKeyMappping(records); TObjectIntHashMap<Vertex> rawDegrees = new TObjectIntHashMap<Vertex>(); for (Vertex v : proj.getVertices()) { rawDegrees.put(v, v.getNeighbours().size()); }/*from w ww . ja va 2s .c o m*/ int edgecnt = 0; int doublecnt = 0; int egoEdge = 0; Set<Vertex> notOkVertices = new HashSet<Vertex>(); Set<Vertex> okVertices = new HashSet<Vertex>(); DescriptiveStatistics notOkStats = new DescriptiveStatistics(); DescriptiveStatistics okStats = new DescriptiveStatistics(); DescriptiveStatistics numDistr = new DescriptiveStatistics(); DescriptiveStatistics numDistrNoZero = new DescriptiveStatistics(); DescriptiveStatistics sizeDistr = new DescriptiveStatistics(); TDoubleArrayList sizeValues = new TDoubleArrayList(); TDoubleArrayList kSizeValues = new TDoubleArrayList(); TDoubleArrayList numValues = new TDoubleArrayList(); TDoubleArrayList numValues2 = new TDoubleArrayList(); TDoubleArrayList kNumValues = new TDoubleArrayList(); for (VertexRecord record : records) { if (record.isEgo) { List<Set<String>> cliques = sqlData.getCliques(record); numDistr.addValue(cliques.size()); Vertex v = idMap.get(record.id); numValues.add(cliques.size()); kNumValues.add(v.getNeighbours().size()); if (!cliques.isEmpty()) numDistrNoZero.addValue(cliques.size()); for (Set<String> clique : cliques) { sizeDistr.addValue(clique.size()); sizeValues.add(clique.size()); kSizeValues.add(rawDegrees.get(projMap.get(v))); numValues2.add(cliques.size()); List<SocialSparseVertex> vertices = new ArrayList<SocialSparseVertex>(clique.size()); for (String alter : clique) { VertexRecord r = map.get(record.egoSQLId + alter); if (r != null) { SocialSparseVertex vertex = idMap.get(r.id); if (vertex != null) { vertices.add(vertex); } else { logger.warn("Vertex not found."); } } else { logger.warn("Record not found."); } } for (int i = 0; i < vertices.size(); i++) { for (int j = i + 1; j < vertices.size(); j++) { SampledVertexDecorator<SocialSparseVertex> vProj1 = projMap.get(vertices.get(i)); SampledVertexDecorator<SocialSparseVertex> vProj2 = projMap.get(vertices.get(j)); if (!vProj1.isSampled() && !vProj2.isSampled()) { if (Math.random() < 0.62) { SocialSparseEdge socialEdge = builder.addEdge(graph, vertices.get(i), vertices.get(j)); if (socialEdge != null) { projBuilder.addEdge(proj, vProj1, vProj2, socialEdge); edgecnt++; if (vProj1.isSampled() || vProj2.isSampled()) { egoEdge++; if (vProj1.isSampled()) notOkVertices.add(vProj1); else notOkVertices.add(vProj2); } } else { doublecnt++; if (vProj1.isSampled()) okVertices.add(vProj1); else if (vProj2.isSampled()) okVertices.add(vProj2); } } } } } } } } for (Vertex v : okVertices) okStats.addValue(rawDegrees.get(v)); for (Vertex v : notOkVertices) notOkStats.addValue(rawDegrees.get(v)); try { TDoubleDoubleHashMap hist = Histogram.createHistogram(okStats, new LinearDiscretizer(1), false); TXTWriter.writeMap(hist, "k", "n", "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/k_ok.txt"); TDoubleDoubleHashMap hist2 = Histogram.createHistogram(notOkStats, new LinearDiscretizer(1), false); TXTWriter.writeMap(hist2, "k", "n", "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/k_notok.txt"); TDoubleDoubleHashMap ratio = new TDoubleDoubleHashMap(); double[] keys = hist.keys(); for (double k : keys) { double val1 = hist2.get(k); double val2 = hist.get(k); ratio.put(k, val1 / (val2 + val1)); } TXTWriter.writeMap(ratio, "k", "p", "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/k_ratio.txt"); logger.info("Mean num of cliques: " + numDistrNoZero.getMean()); logger.info("Mean size: " + sizeDistr.getMean()); logger.info("Median num of cliques: " + StatUtils.percentile(numDistrNoZero.getValues(), 50)); logger.info("Median size: " + StatUtils.percentile(sizeDistr.getValues(), 50)); TDoubleDoubleHashMap histNum = Histogram.createHistogram(numDistrNoZero, FixedSampleSizeDiscretizer.create(numDistrNoZero.getValues(), 2, 20), true); Histogram.normalize(histNum); TXTWriter.writeMap(histNum, "num", "freq", "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/numCliques.txt"); TDoubleDoubleHashMap histSize = Histogram.createHistogram(sizeDistr, FixedSampleSizeDiscretizer.create(sizeDistr.getValues(), 2, 20), true); Histogram.normalize(histSize); TXTWriter.writeMap(histSize, "size", "freq", "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/numPersons.txt"); Discretizer discretizer = FixedSampleSizeDiscretizer.create(kSizeValues.toNativeArray(), 20, 20); TDoubleArrayList valuesX = new TDoubleArrayList(); for (int i = 0; i < kSizeValues.size(); i++) { valuesX.add(discretizer.discretize(kSizeValues.get(i))); } Correlations.writeToFile(Correlations.mean(valuesX.toNativeArray(), sizeValues.toNativeArray()), "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/size_k.txt", "k", "size"); discretizer = FixedSampleSizeDiscretizer.create(kNumValues.toNativeArray(), 20, 20); valuesX = new TDoubleArrayList(); for (int i = 0; i < kNumValues.size(); i++) { valuesX.add(discretizer.discretize(kNumValues.get(i))); } Correlations.writeToFile(Correlations.mean(valuesX.toNativeArray(), numValues.toNativeArray()), "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/num_k.txt", "k", "n"); Correlations.writeToFile(Correlations.mean(numValues2.toNativeArray(), sizeValues.toNativeArray()), "/Users/jillenberger/Work/socialnets/data/ivt2009/11-2011/augmented/size_num.txt", "num", "size"); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } logger.info(String.format("Inserted %1$s edges, %2$s edges already present.", edgecnt, doublecnt)); logger.info(String.format("Inserted %1$s edges between at least one ego.", egoEdge)); }
From source file:playground.johannes.statistics.GraphStatistics.java
public static DescriptiveStatistics getDegreeStatistics(Graph g) { DescriptiveStatistics stats = new DescriptiveStatistics(); Set<Vertex> vertices = g.getVertices(); for (Vertex v : vertices) { stats.addValue(v.degree());//from ww w . jav a 2 s. co m } return stats; }
From source file:playground.johannes.statistics.GraphStatistics.java
public static DescriptiveStatistics getClusteringStatistics(Graph g) { DescriptiveStatistics stats = new DescriptiveStatistics(); Map<Vertex, Double> values = edu.uci.ics.jung.statistics.GraphStatistics.clusteringCoefficients(g); for (Vertex v : values.keySet()) { if (v.degree() == 1) stats.addValue(0.0);//from ww w . j a va 2 s .c om else stats.addValue(values.get(v)); } return stats; }
From source file:playground.johannes.statistics.SampledGraphStatistics.java
public static DescriptiveStatistics getDegreeStatistics(SampledGraph g) { DescriptiveStatistics stats = new DescriptiveStatistics(); Set<SampledVertex> vertices = g.getVertices(); for (SampledVertex v : vertices) { if (!v.isAnonymous()) stats.addValue(v.degree());//w w w.j a v a2 s . c o m } return stats; }
From source file:playground.johannes.statistics.SampledGraphStatistics.java
public static DescriptiveStatistics getClusteringStatistics(SampledGraph g) { DescriptiveStatistics stats = new DescriptiveStatistics(); Map<SampledVertex, Double> values = GraphStatistics.clusteringCoefficients(g); for (SampledVertex v : values.keySet()) { if (!v.isAnonymous()) { if (v.degree() == 1) stats.addValue(0.0);//ww w . ja v a 2s .c o m else stats.addValue(values.get(v)); } } return stats; }