def get_initial_allele_counts(self, fragment): '''Get allele counts from the initial time point''' import os from hivwholeseq.patients.samples import SamplePat for i in xrange(len(self.samples)): sample = SamplePat(self.samples.iloc[i]) if os.path.isfile(sample.get_allele_counts_filename(fragment)): return sample.get_allele_counts(fragment)
for fragment in fragments: for samplename, sample in samples.iterrows(): fork_self(samplename, fragment, VERBOSE=VERBOSE, qual_min=qual_min, PCR=PCR, maxreads=maxreads, use_tests=use_tests) sys.exit() counts_all = [] for fragment in fragments: counts = [] for samplename, sample in samples.iterrows(): sample = SamplePat(sample) pname = sample.patient if VERBOSE >= 2: print pname, fragment, samplename refseq = SeqIO.read( get_initial_reference_filename(pname, fragment), 'fasta') fn_out = sample.get_allele_cocounts_filename(fragment, PCR=PCR, qual_min=qual_min, compressed=True) fn = sample.get_mapped_filtered_filename( fragment, PCR=PCR, decontaminated=True) #FIXME if save_to_file:
def itersamples(self): '''Generator for samples in this patient, each with extended attributes''' from hivwholeseq.patients.samples import SamplePat for samplename, sample in self.samples.iterrows(): yield SamplePat(sample)
def initial_sample(self): '''The initial sample used as a mapping reference''' from .samples import SamplePat return SamplePat(self.samples.iloc[0])
fragments = args.fragments submit = args.submit VERBOSE = args.verbose n_pairs = args.maxreads summary = args.summary PCR = args.PCR # Collect all sequenced samples from patients samples_pat = lssp() if pnames is not None: samples_seq = [] for pname in pnames: patient = load_patient(pname) patient.discard_nonsequenced_samples() for samplename_pat, sample_pat in patient.samples.iterrows(): sample_pat = SamplePat(sample_pat) samples_seq.append(sample_pat.samples_seq) samples_seq = pd.concat(samples_seq) elif samplenames is not None: samples_seq = lss() ind = samples_pat.index.isin(samplenames) samplenames_pat = samples_pat.index[ind] samples_seq = samples_seq.loc[samples_seq['patient sample'].isin( samplenames_pat)] else: samples_seq = lss() samples_seq = samples_seq.loc[samples_seq['patient sample'].isin( samples_pat.index)]
VERBOSE = args.verbose repn = args.repnumber samplename = args.sample patient = load_patient(pname) patient.discard_nonsequenced_samples() mkdirs(get_initial_reference_foldername(pname)) if not fragments: fragments = ['F' + str(i) for i in xrange(1, 7)] if VERBOSE >= 3: print 'fragments', fragments if samplename is None: sample = SamplePat(patient.samples.iloc[samplen]) else: sample = load_sample_sequenced(samplename) for fragment in fragments: sample_seq = SampleSeq(sample.samples_seq.iloc[repn]) seq_run = sample_seq['seq run'] adaID = sample_seq['adapter'] dataset = sample_seq.sequencing_run data_folder = dataset.folder if VERBOSE: print 'Initial sample:', sample_seq.name, sample_seq['seq run'], print sample_seq.adapter