В нем говорится, что вы хотите сделать это в pandas
, так что вот решение pandas
.
fnames = ['After_Source1_Receiver1.csv',
'After_Source1_Receiver2.csv',
'Before_Source1_Receiver1.csv',
'Before_Source1_Receiver2.csv',
'During1_Source1_Receiver1.csv',
'During1_Source1_Receiver2.csv',
'During2_Source1_Receiver1.csv',
'During2_Source1_Receiver2.csv']
df = pd.DataFrame(fnames, columns=['names'])
Я не знаю, что вы хотите сделать со своими конечными результатами, но вот какВы группируете их.
pattern = r'Source(\d+)_Receiver(\d+)'
for _, g in pd.concat([df, df['names'].str.extract(pattern)], axis=1).groupby([0,1]):
print(g.names)
0 After_Source1_Receiver1.csv
2 Before_Source1_Receiver1.csv
4 During1_Source1_Receiver1.csv
6 During2_Source1_Receiver1.csv
Name: names, dtype: object
1 After_Source1_Receiver2.csv
3 Before_Source1_Receiver2.csv
5 During1_Source1_Receiver2.csv
7 During2_Source1_Receiver2.csv
Name: names, dtype: object