Author: ghannum
Date: 2010-08-05 15:06:50 -0700 (Thu, 05 Aug 2010)
New Revision: 21223
Added:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/Sandbox.java
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ComplexRegression.java
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ModFinder/HCSearch2.java
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/SearchTask.java
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/VisualStyleObserver.java
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ui/SearchPropertyPanel.java
Log:
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ComplexRegression.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ComplexRegression.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ComplexRegression.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -40,7 +40,7 @@
y[i] = 1;
break;
}
-
+
edgeList.add(e);
i++;
@@ -63,15 +63,20 @@
double prob = lm.yhat(j);
if (prob==1) prob = 1-1/(double)n;
+ if (prob==0) prob = 1/(double)n;
+
+ prob = Math.log(prob)-Math.log(1-prob);
+
+ /*
prob = prob / (1-prob);
if (Float.isInfinite((float)prob))
{
prob = 1-1/(double)n;
prob = prob / (1-prob);
- }
+ }*/
-
out.add(edgeList.get(j).getI1(),edgeList.get(j).getI2(),(float)prob);
+ if (prob>0)
out.add(edgeList.get(j).getI1(),edgeList.get(j).getI2(),(float)prob);
}
return new ComplexRegressionResult(out,DoubleMatrix.getCol(x,
1),y,lm.coefficients().get(0),lm.coefficients().get(1));
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ModFinder/HCSearch2.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ModFinder/HCSearch2.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ModFinder/HCSearch2.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -80,7 +80,7 @@
}
if (parentTask.needsToHalt()) return null;
-
+
// Identify the best physical edge to merge
Iterator<TypedLinkEdge<TypedLinkNodeModule<String,
BFEdge>, BFEdge>> edgei = results
.edgeIterator().iterator();
@@ -119,6 +119,9 @@
results, best.source(), best.target(),
sfunc);
mergedNode.value().setScore(best.value().complexMerge());
+ //if (mergedNode.value().contains("AT2G25930"))
+ // System.out.println(mergedNode.value());
+
// Check to see if the search should continue
if (max > 0) {
// Recalculate linkMerge scores
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/NestedNetworkCreator.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -187,17 +187,17 @@
if (sourceModule.size()<=2)
{
Iterator<String> genes =
sourceModule.getMemberValues().iterator();
- String newName = genes.next();
+ String newName = "("+genes.next();
while (genes.hasNext()) newName+=",
"+genes.next();
- sourceNode.setIdentifier(newName);
+ sourceNode.setIdentifier(newName+")");
}
if (targetModule.size()<=2)
{
Iterator<String> genes =
targetModule.getMemberValues().iterator();
- String newName = genes.next();
+ String newName = "("+genes.next();
while (genes.hasNext()) newName+=",
"+genes.next();
- targetNode.setIdentifier(newName);
+ targetNode.setIdentifier(newName+")");
}
//Annotate large complexes
@@ -349,7 +349,9 @@
for (final CyEdge edge : edges)
{
nestedNetwork.addEdge(edge);
- cyEdgeAttrs.setAttribute(edge.getIdentifier(),
"PanGIA.Interaction Type", "Genetic");
+ Object existingAttribute =
cyEdgeAttrs.getAttribute(edge.getIdentifier(), "PanGIA.Interaction Type");
+ if (existingAttribute==null ||
!existingAttribute.equals("Physical"))
cyEdgeAttrs.setAttribute(edge.getIdentifier(), "PanGIA.Interaction Type",
"Genetic");
+ else cyEdgeAttrs.setAttribute(edge.getIdentifier(),
"PanGIA.Interaction Type", "Physical&Genetic");
}
if (createNetworkView) {
Added:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/Sandbox.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/Sandbox.java
(rev 0)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/Sandbox.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -0,0 +1,18 @@
+package org.idekerlab.PanGIAPlugin;
+
+import org.idekerlab.PanGIAPlugin.util.*;
+import org.idekerlab.PanGIAPlugin.data.*;
+
+public class Sandbox
+{
+ public static void main(String[] args)
+ {
+
+ double[] v = DoubleVector.rUnif(100);
+ for (int i=10;i<20;i++)
+ v[i] = v[10];
+
+ System.out.println(new
DoubleVector(DoubleVector.quantileNorm(v)));
+ System.out.println(new
DoubleVector(ScalerFactory.getScaler("rank").scale(v,0,1)));
+ }
+}
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/SearchTask.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/SearchTask.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/SearchTask.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -184,6 +184,20 @@
pValueThreshold = 1;
}
+ //Filter edges with negative PanGIA edge scores
+ final
Set<TypedLinkEdge<TypedLinkNodeModule<String,BFEdge>,BFEdge>> deleteSet = new
HashSet<TypedLinkEdge<TypedLinkNodeModule<String,BFEdge>,BFEdge>>(1000);
+ for (TypedLinkEdge<TypedLinkNodeModule<String,BFEdge>,BFEdge>
edge : results.edgeIterator())
+ {
+ if (!edge.value().isType(InteractionType.Genetic))
+ {
+ deleteSet.add(edge);
+ continue;
+ }
+
+ if (edge.value().link() <= 0) deleteSet.add(edge);
+ }
+ results.removeAllEdges(deleteSet);
+
if (needsToHalt) return;
//Check for problems
@@ -440,7 +454,8 @@
for (final CyEdge edge : edges)
outputNetwork.add(edge.getSource().getIdentifier(),
edge.getTarget().getIdentifier(), 1.0f);
- } else {
+ } else
+ {
// Validate that "numericAttrName" is a known numeric
edge attribute.
final CyAttributes edgeAttributes =
Cytoscape.getEdgeAttributes();
final byte edgeAttribType =
edgeAttributes.getType(numericAttrName);
@@ -499,7 +514,7 @@
float from, to;
if (scalingMethod == ScalingMethodX.LINEAR_LOWER ||
scalingMethod == ScalingMethodX.LINEAR_UPPER) {
final float EPS = 0.25f / edgeAttribValues.length;
- from = 0.5f - EPS;
+ from = 0.5f + EPS;
to = 1.0f - EPS;
scalingType = "linear";
} else if (scalingMethod == ScalingMethodX.RANK_LOWER ||
scalingMethod == ScalingMethodX.RANK_UPPER) {
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/VisualStyleObserver.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/VisualStyleObserver.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/VisualStyleObserver.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -10,7 +10,14 @@
import cytoscape.layout.CyLayoutAlgorithm;
import cytoscape.view.CyNetworkView;
import cytoscape.view.CytoscapeDesktop;
+import cytoscape.visual.EdgeAppearanceCalculator;
+import cytoscape.visual.VisualPropertyType;
import cytoscape.visual.VisualStyle;
+import cytoscape.visual.calculators.BasicCalculator;
+import cytoscape.visual.calculators.Calculator;
+import cytoscape.visual.mappings.ContinuousMapping;
+import cytoscape.visual.mappings.ObjectMapping;
+import cytoscape.visual.properties.EdgeOpacityProp;
/**
* Listening to the network creation event and override the visual style.
@@ -80,23 +87,32 @@
if(style == null)
return;
+ /*
+ if (style.getName().equals(VS_OVERVIEW_NAME))
+ {
+ EdgeAppearanceCalculator eac =
style.getEdgeAppearanceCalculator();
+
+ ContinuousMapping cm = new
ContinuousMapping(new EdgeOpacityProp(), ObjectMapping.EDGE_MAPPING);
+ cm.setControllingAttributeName("PanGIA.edge
score", view.getNetwork(), true);
+
cm.calculateRangeValue(view.getNetwork().getEdgeIndicesArray())
+
+ Calculator edgeOpacityCalc = new
BasicCalculator(VS_OVERVIEW_NAME+"-EdgeOpacityMapping", cm,
VisualPropertyType.EDGE_OPACITY);
+
+ eac.setCalculator(edgeOpacityCalc);
+
+ }*/
+
+ view.setVisualStyle(style.getName());
+
if(Cytoscape.getVisualMappingManager().getVisualStyle().equals(style) == false)
+
Cytoscape.getVisualMappingManager().setVisualStyle(style);
+
if (style.getName().equals(VS_MODULE_NAME))
{
- view.setVisualStyle(style.getName());
-
if(Cytoscape.getVisualMappingManager().getVisualStyle().equals(style) == false)
-
Cytoscape.getVisualMappingManager().setVisualStyle(style);
-
CyLayoutAlgorithm alg =
cytoscape.layout.CyLayouts.getLayout("force-directed");
view.applyLayout(alg);
view.redrawGraph(true, true);
- }else
- {
- view.setVisualStyle(style.getName());
-
if(Cytoscape.getVisualMappingManager().getVisualStyle().equals(style) == false)
-
Cytoscape.getVisualMappingManager().setVisualStyle(style);
- view.redrawGraph(false, true);
- }
+ }else view.redrawGraph(false, true);
}
}
}
Modified:
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ui/SearchPropertyPanel.java
===================================================================
---
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ui/SearchPropertyPanel.java
2010-08-05 20:50:36 UTC (rev 21222)
+++
csplugins/trunk/ucsd/ruschein/PanGIA/src/org/idekerlab/PanGIAPlugin/ui/SearchPropertyPanel.java
2010-08-05 22:06:50 UTC (rev 21223)
@@ -40,11 +40,11 @@
private static final long serialVersionUID = -3352470909434196700L;
private static final double DEF_ALPHA = 1.6;
- private static final double DEF_ALPHA_MUL = 1.0;
- private static final String DEF_DEGREE = "";
+ private static final double DEF_ALPHA_MUL = 0.0;
+ private static final String DEF_DEGREE = "2";
private static final double DEF_CUTOFF = 20.0;
- private static final double DEF_PVALUE_THRESHOLD = 95;
- private static final int DEF_NUMBER_OF_SAMPLES = 10000;
+ private static final double DEF_PVALUE_THRESHOLD = 80;
+ private static final int DEF_NUMBER_OF_SAMPLES = 1000;
private static final String DEFAULT_ATTRIBUTE = "none";
private Container container;
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.