다시 수정하여 질문 드립니다. list 에서 특정 파일 추출
조회수 458회
안녕하세요
예를들어 파일명에 특정 패턴이 다음과 같고,
3G1-1EW_E-W_ACC
3G1-1NS_N-S_ACC
3G1-1UD_U-D_ACC
3G1-2EW_E-W_ACC
3G1-2NS_N-S_ACC
3G1-2UD_U-D_ACC
abc-def_g-h_ijk 라고 할 때
a, b, c, d 가 동일한 파일명을 찾아서 추출할 수 있나요..?
예를 들어 위와 같이 list에 6개 파일이 있고
3G1-1EW_E-W_ACC
3G1-1NS_N-S_ACC
3G1-1UD_U-D_ACC
다음과 같이 조건에 맞는 3개의 파일만 찾아서 추출하여
파일이 있다면
file1=pd.read_csv('3G1-1EW_E-W_ACC')
file2=pd.read_csv('3G1-1NS_N-S_ACC')
file3=pd.read_csv('3G1-1UD_U-D_ACC')
로 지정하고 pd.concat
으로 3G1-1.csv
파일병합 후
다시 돌아가서
file1=pd.read_csv('3G1-2EW_E-W_ACC')
file2=pd.read_csv('3G1-2NS_N-S_ACC')
file3=pd.read_csv('3G1-2UD_U-D_ACC')
도 마찬가지로 3G1-2.csv
파일병합 하고자 합니다.
ii = [i for i in os.listdir(targerdir) if '3G1-1' in i]
요정도는 했는데 매번 3G1-1
이라는 조건문을 바꿔야 해서,
혹시 다른 루틴은 없나요?
-
(•́ ✖ •̀)
알 수 없는 사용자 - 〉
1 답변
-
참고하세요.
L = [ '3G1-1EW_E-W_ACC', '3G1-1NS_N-S_ACC', '3G1-1UD_U-D_ACC', '3G1-2EW_E-W_ACC', '3G1-2NS_N-S_ACC', '3G1-2UD_U-D_ACC' ] import itertools as it g = it.groupby(L, lambda name:name[:5]) for k, v in g: print(k, list(v)) 3G1-1 ['3G1-1EW_E-W_ACC', '3G1-1NS_N-S_ACC', '3G1-1UD_U-D_ACC'] 3G1-2 ['3G1-2EW_E-W_ACC', '3G1-2NS_N-S_ACC', '3G1-2UD_U-D_ACC']
댓글 입력