public void WriteProbsToConsole() { foreach (var keyValuePair in _probs) { Console.Out.WriteLine($"{{{string.Join(",", SubsetUtils.FromIndex(_randomVariables, keyValuePair.Key).Select(v => v.Name))}}}: {keyValuePair.Value}"); } }
private void DeserializeProbabilities() { using (var file = File.OpenText(_config.ProbabilityDeserializationFilePath)) { var serializer = new JsonSerializer(); var probs = (ProbabilitySerialization)serializer.Deserialize(file, typeof(ProbabilitySerialization)); foreach (var keyValuePair in probs.Probs) { var storedIndex = keyValuePair.Key; var storedRandomVariables = SubsetUtils.FromIndex(probs.RandomVariables, storedIndex); var realRandomVariables = _randomVariables.Where(rvar => storedRandomVariables.Contains(rvar.Name)).ToList(); _probs[SubsetUtils.GetIndex(realRandomVariables, _randomVariables)] = keyValuePair.Value; if (realRandomVariables.Count == 1) { realRandomVariables[0].Probability = new[] { keyValuePair.Value, keyValuePair.Value.Complement() }; } } } }