다음은 제가 정렬한 샘플 데이터입니다(3개 열).
CustomerId, fname, lname, email, 성별, 구매 금액, 신용 카드, 거래 ID, 거래 날짜, 거리, 도시, 주, 우편 번호, 전화
<redacted>
다음 명령을 사용하여:
awk -F ',' '{ state = $12 ? $12: "exceptions.csv"; print}' < "03_conv_gender.tmp" > "04_filter_bad_data.tmp"
각 행에 {state} 값이 누락되었는지 확인하고, 누락된 경우 "Exceptions.csv"라는 새 파일에 넣습니다.
"04_filter_bad_data.tmp"에서 원본 불량 데이터를 어떻게 제거합니까? 아니면 이를 수행하는 더 좋은 방법이 있습니까?
답변1
awk -F, '{ print >($12==""?"badData.csv":"goodData.csv") }' infile
그러면 입력 파일이 빈 열 #12(상태필드)가 파일에 기록됩니다."잘못된 데이터.csv"그렇지 않으면 쓰여질 것입니다"좋은 데이터.csv"결과물 파일.