#include #include #include #include using namespace std; const char MIS='0'; const char HET='h'; int main (int argc, char* argv[]) { string line, discard, fam, id; int nr_snp; if(argc < 3){ cerr << "Usage: "; return 0; } ifstream file_ped(argv[1]); ifstream file_map(argv[2]); if(!file_ped || !file_map) { cerr << "file could not be opened" << endl; return 0; } // load marker names vector map; while(!file_map.eof()) { discard = line = ""; file_map >> discard >> line >> discard >> discard; if(!file_ped.good() || discard == "" || line == "") continue; map.push_back(line); } nr_snp = map.size(); cerr << nr_snp << " SNPs" << endl; // load individuals vector sample; vector< vector > haplotype[2]; int ctr = 0; while(!file_ped.eof()) { fam = id = discard = ""; file_ped >> fam >> id >> discard >> discard >> discard >> discard; if(fam == "" || id == "" || discard == "") continue; getline(file_ped,line); sample.push_back(id); vector seq[2]; for(int i=0;i