'컬럼 인덱스 필터링'에 해당되는 글 1건

  1. 2018.11.27 [CSV] 열의 인덱스 값을 사용하여 특정 열을 선택

CSV 파일에 불필요한 열이 포함되어있는 경우, 필요한 열만 필터링하여 활용

- 열의 인덱스 값을 사용하는 방법

- 열의 헤더를 사용하는 방법

 

열의 인덱스 값을 이용해 특정 열을 필터링

- 열의 인덱스 값을 쉽게 식별가능

- 여러개의 입력 파일 처리 하기 위한 모든 입력 파일에서 열의 위치가 변경되지 않는 경우

 

다음 예제 코드는 Name 및 BOD, TN, T-P 열만 사용하기 위해 인덱스 값을 이용한 필터링 수행

 

 

 

 

- 코드설명 -

 


  8 selected_columns = [1, 6, 9, 10]


 

8행

- CSV에서 추출하려는 4열의 인덱스 값을 갖는 selected_column 리스트변수 생성

 


 14       for row_list in freader:

 15          row_list_output = []

 16          for index_value in selected_column:

 17             row_list_output.append(row_list[index_value])

 18          print(row_list_output)

 19          fwriter.writerow(row_list_output)


 

15

- CSV에서 추출하고자 하는 각 행의 값을 저장하기 위한 row_list_output 리스트변수 생성

16행

- selected_column에 저장되어있는 관심 인덱스 값을 반복하는 for문

17행

- 리스트의 append()함수를 사용해 selected_column에 정의된 특정 인덱스의 데이터 값을 row_list_output에 추가

- fwriter의 writerow()함수는 문자열이나 숫자의 시퀀스 자료형을 받으므로 리스트변수(row_list_output)를 만들어 놓는것이 유용함

18, 19행

- row_list_output의 값을 화면 및 파일에 출력

 

(*) 출력파일 로 설정한 r_filtering_by_column_index.csv를 통해 결과 확인

(*) 소스코드 파일 첨부(csv파일은 [CSV] 파일 읽고 쓰기(2) 에...)

 

6_filtering_by_column_index.zip

 

Posted by Roiz
,