Skip to content

Commit

Permalink
Merge branch 'development'
Browse files Browse the repository at this point in the history
Conflicts:
	pom.xml
  • Loading branch information
kvb2univpitt committed Oct 30, 2018
2 parents f0339bb + e02a3f3 commit 947bd8b
Show file tree
Hide file tree
Showing 7 changed files with 58 additions and 117 deletions.
8 changes: 4 additions & 4 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>edu.pitt.dbmi</groupId>
<artifactId>causal-cmd</artifactId>
<version>0.3.1</version>
<version>0.4.1</version>
<packaging>jar</packaging>

<properties>
Expand Down Expand Up @@ -38,7 +38,7 @@
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<executions>
<execution>
<id>copy-dist-resources</id>
Expand All @@ -61,7 +61,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
<version>3.1.0</version>
<configuration>
<archive>
<manifest>
Expand Down Expand Up @@ -121,7 +121,7 @@
<dependency>
<groupId>edu.cmu</groupId>
<artifactId>tetrad-lib</artifactId>
<version>6.4.0</version>
<version>6.6.0</version>
<exclusions>
<exclusion>
<groupId>log4j</groupId>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/edu/pitt/dbmi/causal/cmd/CmdParams.java
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ public interface CmdParams {
public static final String SCORE = "score";

public static final String NUM_CATEGORIES = "numCategories";
public static final String TARGET_NAME = "targetName";

public static final String THREAD = "thread";

Expand Down
14 changes: 12 additions & 2 deletions src/main/java/edu/pitt/dbmi/causal/cmd/CmdParser.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
import edu.pitt.dbmi.causal.cmd.util.FileUtils;
import edu.pitt.dbmi.causal.cmd.util.OptionFactory;
import java.io.FileNotFoundException;
import java.io.Serializable;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashMap;
Expand Down Expand Up @@ -249,7 +250,12 @@ private static ParseOptions getValidOptions(String[] args, Options options) thro

// add Tetrad parameters
params.forEach(param -> {
opts.addOption(CmdOptions.getInstance().getLongOption(param));
if (param.equals(CmdParams.TARGET_NAME)) {
// add required Tetrad parameters
opts.addOption(Option.builder().longOpt(CmdParams.TARGET_NAME).desc("Target variable.").hasArg().argName("string").required().build());
} else {
opts.addOption(CmdOptions.getInstance().getLongOption(param));
}
});

try {
Expand Down Expand Up @@ -357,7 +363,11 @@ private static Map<String, String> getValidParameters(CommandLine cmd, CmdArgs c
}
parameters.put(param, value);
} else {
parameters.put(param, paramDesc.getDefaultValue().toString());
Serializable defaultValue = paramDesc.getDefaultValue();
String value = (defaultValue instanceof Boolean)
? Boolean.FALSE.toString()
: defaultValue.toString();
parameters.put(param, value);
}
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,10 +92,11 @@ public String getName(Class clazz) {
: "";
}

public String getDescription(Class clazz) {
return (clazz != null && clazz.isAnnotationPresent(Algorithm.class))
? ((Algorithm) clazz.getAnnotation(Algorithm.class)).description()
: "";
}
// not used so commenting out as this is more tetrad gui
// public String getDescription(Class clazz) {
// return (clazz != null && clazz.isAnnotationPresent(Algorithm.class))
// ? ((Algorithm) clazz.getAnnotation(Algorithm.class)).description()
// : "";
// }

}
21 changes: 14 additions & 7 deletions src/main/java/edu/pitt/dbmi/causal/cmd/tetrad/TetradUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
import edu.pitt.dbmi.causal.cmd.CmdArgs;
import edu.pitt.dbmi.causal.cmd.ValidationException;
import edu.pitt.dbmi.causal.cmd.util.DateTime;
import edu.pitt.dbmi.causal.cmd.util.FileIO;
import edu.pitt.dbmi.data.Dataset;
import edu.pitt.dbmi.data.reader.covariance.CovarianceDataReader;
import edu.pitt.dbmi.data.reader.covariance.LowerCovarianceDataReader;
Expand All @@ -49,6 +48,7 @@
import java.io.File;
import java.io.IOException;
import java.io.PrintStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Collections;
import java.util.HashSet;
Expand All @@ -57,6 +57,7 @@
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import java.util.stream.Stream;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand Down Expand Up @@ -172,18 +173,24 @@ public static IKnowledge readInKnowledge(CmdArgs cmdArgs, PrintStream out) throw
}

private static Set<String> getExcludeVariables(CmdArgs cmdArgs, PrintStream out) throws IOException {
Set<String> excludeVars;

Path file = cmdArgs.getExcludeVariableFile();
if (file == null) {
excludeVars = new HashSet<>();
return Collections.EMPTY_SET;
} else {
Set<String> set = new HashSet<>();

logStartReading(file, out);
excludeVars = FileIO.extractUniqueLine(cmdArgs.getExcludeVariableFile());
try (Stream<String> stream = Files.lines(file)) {
stream
.map(e -> e.trim())
.filter(e -> !e.isEmpty())
.distinct()
.collect(Collectors.toCollection(() -> set));
}
logFinishReading(file, out);
}

return excludeVars;
return set;
}
}

public static List<DataModel> getDataModels(CmdArgs cmdArgs, PrintStream out) throws IOException {
Expand Down
97 changes: 0 additions & 97 deletions src/main/java/edu/pitt/dbmi/causal/cmd/util/FileIO.java

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,24 @@ public class CausalCmdApplicationTest {
public CausalCmdApplicationTest() {
}

@Test
public void testMainFgesMb() throws IOException {
String contData = TestFiles.getInstance().getContinuousData().toString();
String dirOut = tmpFolder.newFolder("fges_mb").toString();
String[] args = {
"--dataset", contData,
"--delimiter", "tab",
"--data-type", "continuous",
"--algorithm", "fges-mb",
"--score", "sem-bic",
"--targetName", "X1",
"--verbose",
"--skip-latest",
"--out", dirOut
};
CausalCmdApplication.main(args);
}

@Test
public void testMainCovariance() throws IOException {
String covarData = TestFiles.getInstance().getCovarianceData().toString();
Expand All @@ -60,8 +78,9 @@ public void testMainWithBootstrap() throws IOException {
String contData = TestFiles.getInstance().getContinuousData().toString();
String dirOut = tmpFolder.newFolder("gfci_bootstrap").toString();
String[] args = {
"--bootstrapEnsemble", "1",
"--bootstrapSampleSize", "5",
"--resamplingEnsemble", "1",
"--numberResampling", "5",
"--resampleSize", "100",
"--dataset", contData,
"--delimiter", "tab",
"--data-type", "continuous",
Expand Down

0 comments on commit 947bd8b

Please sign in to comment.