私の目標は、ファイル名の共有特性によってディレクトリ内の.csvファイルをグループ化することです。私のディレクトリには、次の名前のファイルが含まれています。
これらのファイルを、後で連結できるように、ファイル名の「ソース」セクションと「レシーバー」セクションに続く番号でグループに分類したいと思います。
グループ1
グループ2
何か案は?
それはあなたがこれをやりたいと言っている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
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加