Python에서 CSV를 사전으로 변환

Rayven Esplanada 2023년1월30일
  1. csv 모듈을 사용하여 Python에서 CSV 파일을 사전으로 변환
  2. Python에서 Panda를 사용하여 CSV 파일을 사전으로 변환
Python에서 CSV를 사전으로 변환

이 튜토리얼은 파이썬에서 csv 파일을 두 개의 열을 포함하는 사전으로 변환하는 방법을 소개합니다. 첫 번째 열에는 키가 포함되고 두 번째 열에는 값이 포함됩니다.

이 자습서에서 샘플 CSV의 콘텐츠는 아래와 같습니다.

CSV를 Python의 사전으로 변환

첫 번째 열에는 키로 사용될 식별자가 포함되고 두 번째 열은 값입니다.

csv 모듈을 사용하여 Python에서 CSV 파일을 사전으로 변환

Python에는 변환, 읽기, 쓰기 및 삽입과 같은 CSV 파일을 조작하는 모든 종류의 유틸리티 함수가 포함 된csv모듈이 있습니다. CSV 파일을 사전으로 변환하려면 CSV 파일을 열고 파일을 Python 객체에 저장하는csv 함수reader()를 사용하여 변수로 읽어들입니다.

그런 다음 사전 이해를 사용하여reader 객체를 반복하고 사전의 키-값 쌍으로 처음 두 행에 액세스하여 CSV 객체를 사전으로 변환합니다.

import csv

dict_from_csv = {}

with open("csv_file.csv", mode="r") as inp:
    reader = csv.reader(inp)
    dict_from_csv = {rows[0]: rows[1] for rows in reader}

print(dict_from_csv)

출력:

{'fruit': 'apple', 'vegetable': 'tomato', 'mammal': 'rabbit', 'fish': 'clownfish', 'bird': 'crow'}

Python에서 Panda를 사용하여 CSV 파일을 사전으로 변환

CSV 파일을 Python 사전으로 변환하는 또 다른 방법은 CSV 파일에 대한 데이터 조작 도구가 포함 된 Pandas 모듈을 사용하는 것입니다.

Pandas를 가져온 후 몇 가지 매개 변수와 함께 내장 함수read_csv()를 사용하여 csv 파일 형식을 지정합니다. read_csv()를 호출 한 후 내장 된 Pandas 함수to_dict()를 사용하여 결과를 사전으로 변환합니다.

import pandas as pd

dict_from_csv = pd.read_csv(
    "csv_file.csv", header=None, index_col=0, squeeze=True
).to_dict()
print(dict_from_csv)

header 매개 변수는 헤더가 다른 매개 변수에 의해 명시 적으로 전달되거나 선언되도록 지정합니다.

index_colread_csv()함수가 반환하는DataFrame 객체의 레이블로 사용되는 열을 지정합니다. 이 경우 인덱스 0의 첫 번째 열이 레이블입니다.

마지막으로squeeze 매개 변수는 데이터에 값 열이 하나만 포함되어 있는지 여부를 정의합니다. 이 경우 첫 번째 열이 인덱스 열 또는 레이블로 사용되므로 열이 하나만 있습니다.

출력:

{'fruit': 'apple', 'vegetable': 'tomato', 'mammal': 'rabbit', 'fish': 'clownfish', 'bird': 'crow'}
노트
No module named 'pandas'라는 오류가 발생하면pip install pandas 또는pip3 install pandas를 사용하여 로컬 머신에pandas가 설치되어 있는지 확인하십시오 (Python 3을 실행중인 경우).
Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn

관련 문장 - Python CSV

관련 문장 - Python Dictionary