본문으로 건너뛰기
🛠️ToolsShed

CSV Column Extractor

CSV 데이터에서 특정 열을 추출합니다.

이 도구 소개

CSV 컬럼 추출기는 CSV(쉼표로 구분된 값) 데이터에서 특정 컬럼을 추출하는 간단한 유틸리티입니다. 수십 개의 필드를 포함하는 스프레드시트 내보내기가 있지만 몇 개만 필요한 경우나, 혼합된 콘텐츠가 포함된 원본 데이터 파일을 처리할 때 이 도구를 사용하면 정확히 어떤 컬럼을 유지할지 선택하고 나머지는 제거할 수 있습니다. 수동 선택이 번거롭거나 오류가 발생하기 쉬운 대규모 데이터셋을 다룰 때 특히 유용합니다.

이 도구를 사용하려면 CSV 데이터를 붙여넣거나 업로드한 다음, 추출할 컬럼을 지정합니다. CSV에 헤더가 있는 경우 컬럼 이름으로, 또는 컬럼 번호로 지정할 수 있습니다. 추출 버튼을 클릭하면 도구가 선택한 컬럼만 포함하는 새로운 CSV를 즉시 생성합니다. 결과를 다운로드하거나 직접 복사할 수 있으므로 다른 시스템, 데이터베이스 또는 분석 도구로 데이터를 쉽게 준비할 수 있습니다.

이 도구는 데이터 분석가, 개발자, 그리고 대규모 데이터셋을 관리하며 CSV 파일을 빠르게 정제하고, 부분 집합화하거나 재구성해야 하는 모든 사람에게 매우 유용합니다. 다양한 CSV 형식을 처리하며 데이터의 무결성을 유지합니다. 컬럼 순서, 값, 따옴표로 묶인 필드는 모두 그대로 보존됩니다. 데이터베이스, CRM 시스템 또는 분석 플랫폼에서 내보낸 파일을 자주 처리한다면, 이 도구를 항상 손에 두는 것이 상당한 시간을 절약하고 수동 선택 오류의 위험을 줄입니다.

자주 묻는 질문

코드 구현

import csv
import io

def extract_columns(csv_text: str, columns: list[str], delimiter: str = ",") -> str:
    """Extract specific columns from CSV text."""
    reader = csv.DictReader(io.StringIO(csv_text), delimiter=delimiter)
    output = io.StringIO()
    writer = csv.DictWriter(output, fieldnames=columns, delimiter=delimiter,
                            extrasaction="ignore")
    writer.writeheader()
    for row in reader:
        writer.writerow({col: row.get(col, "") for col in columns})
    return output.getvalue()

# Example
csv_data = """name,email,age,city
Alice,alice@example.com,30,Seoul
Bob,bob@example.com,25,Tokyo"""

result = extract_columns(csv_data, ["name", "email"])
print(result)
# name,email
# Alice,alice@example.com
# Bob,bob@example.com

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.