Skip to content

Commit

Permalink
added method to get graphs in folder
Browse files Browse the repository at this point in the history
  • Loading branch information
josura committed Aug 5, 2023
1 parent 1d50e6c commit fee5f03
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
14 changes: 14 additions & 0 deletions src/utilities.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -270,6 +270,20 @@ std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::strin
return std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>> (nameRet,ret);
}

std::pair<std::vector<std::string>,std::vector<std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>>>> edgesFileToEdgesListAndNodesByNameFromFolder(std::string filename){
std::vector<std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>>> ret;
std::vector<std::string> graphNames;
std::vector<std::string> files = get_all(filename,".tsv");
for(auto iter = files.cbegin(); iter!=files.cend();iter++){
std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>> edgesListAndNodesByName = edgesFileToEdgesListAndNodesByName(*iter);
std::vector<std::string> splitted = splitString(*iter, "/"); //split the path
std::string filename = splitted[splitted.size()-1]; //last element
std::vector<std::string> splittedFilename = splitString(filename, "."); //split the extension
graphNames.push_back(splittedFilename[0]);
ret.push_back(edgesListAndNodesByName);
}
return std::pair<std::vector<std::string>,std::vector<std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>>>>(graphNames,ret);
}

std::vector<std::string> getTypesFromFolderFileNames(std::string folderPath){
std::vector<std::string> ret;
Expand Down
1 change: 1 addition & 0 deletions src/utilities.h
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ std::vector<std::string> splitString(std::string toSplit , std::string delimiter

std::pair<std::vector<int>,std::vector<std::tuple<int,int,double>>> edgesFileToEdgesListByIndex(std::string filename);
std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>> edgesFileToEdgesListAndNodesByName(std::string filename);
std::pair<std::vector<std::string>,std::vector<std::pair<std::vector<std::string>,std::vector<std::tuple<std::string,std::string,double>>>>> edgesFileToEdgesListAndNodesByNameFromFolder(std::string filename);
std::tuple<std::vector<std::string>,std::vector<std::string>,std::vector<std::vector<double>>> logFoldChangeMatrixToCellVectors(std::string filename, const std::vector<std::string>& finalNames,bool useEntrez=false);
std::tuple<std::vector<std::string>,std::vector<std::string>,std::vector<std::vector<double>>> logFoldChangeMatrixToCellVectors(std::string filename, const std::vector<std::string>& finalNames,std::vector<std::string> subTypes= std::vector<std::string>(), bool useEntrez=false);
std::map<std::string,std::vector<std::tuple<std::string,std::string,double>>> cellInteractionFileToEdgesListAndNodesByName(std::string filename,bool useEntrez=false);
Expand Down

0 comments on commit fee5f03

Please sign in to comment.