Skip to content

Commit 2c16165

Browse files
authored
added s_id to filter_df(): ('data_id-time-rep')
1 parent c2df68f commit 2c16165

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

pyhxexpress/hxex_updating.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ def makelist(thing):
274274
return thing
275275

276276
def filter_df(metadf=pd.DataFrame(),samples=None,range=None,peptide_ranges=None,
277-
charge=None,index=None,timept=None,timeidx=None,peptides=None,rep=None,data_ids=None,quiet=True):
277+
charge=None,index=None,timept=None,timeidx=None,peptides=None,rep=None,data_ids=None,s_ids=None,quiet=True):
278278
''' Utility function to Filter metadf (or any other dataframe) based on user specified values
279279
samples = ['sample1','sample2'] or 'sample1'
280280
range = [start,end]
@@ -331,6 +331,14 @@ def filter_df(metadf=pd.DataFrame(),samples=None,range=None,peptide_ranges=None,
331331
if not filtered.empty and (rep or rep == 0):
332332
try: filtered = filtered[filtered['rep'].isin(makelist(rep))]
333333
except: print("no column named rep")
334+
335+
if not filtered.empty and s_ids:
336+
s_ids = makelist(s_ids)
337+
for s_id in s_ids:
338+
d, t, r = [float(s) for s in s_id.split('-')]
339+
try:
340+
filtered = filtered[(filtered['data_id'] == d) & (filtered['time'] == t) & (filtered['rep']==r)]
341+
except: print("no s_id",s_id)
334342

335343
if quiet == False:
336344
print("Dataframe filtered to",len(filtered),"from",len(metadf),"total entries")

0 commit comments

Comments
 (0)