public FeaturesExtractor(string pathDataDir)
        {
            _pathDataDir = pathDataDir;
            _characterCharactersData = null;
            _characterComicsData = null;
            _characterSeriesData = null;
            _characterIds = null;

            _backedCharacterComics = null;
            _reducedCharacterId = null;
        }
        public void ReleaseCharacterComicsData()
        {
            _characterComicsData = null;

            Console.WriteLine("Character-Comics data released.");
        }
 public void LoadCharacterComicsData()
 {
     _characterComicsData = FileManager.ReadCharacterComicsDataFromCSV(_pathDataDir);
 }
        public static CharacterComicsData ReadCharacterComicsDataFromCSV(string pathDataDir)
        {
            Console.WriteLine("Loading character-comics data . . .");

            CharacterComicsData data = new CharacterComicsData();

            using (StreamReader reader = new StreamReader(GetPathResultCharComics(pathDataDir)))
            {
                while (!reader.EndOfStream)
                {
                    string input = reader.ReadLine();

                    if (!input.Equals(String.Empty))
                    {
                        string[] inputParts = input.Split(',');
                        HashSet<string> comics = new HashSet<string>();

                        for (int i = 1; i < inputParts.Length; ++i)
                        {
                            comics.Add(inputParts[i]);
                        }

                        data.Add(inputParts[0], comics);
                    }
                }
            }

            Console.WriteLine("Finished character-comics data loading.");

            return data;
        }