python에서 dictionary list를 Excel 2차원표로 정리하고 싶습니다..

조회수 2681회

파이썬에 막 입문한 초보자입니다. dictionary 리스트를 2차원 표로 만들어서 pandas를 통해 필터링하는 프로그램을 만들고 싶은데, 이를 어떻게 정리해야할까요? 제가 가지고 있는 리스트는 이런 형식입니다.

list = [
    {
        "Name" : "Jerry",
        "No." : 33425,
        "Type" : "Programmer"
    },
    {
        "Name" : "Petter",
        "No." : 55324,
        "Sex" : "Male"
    },
    ...

이처럼 Dictionary 내의 key 값도 항목별로 제각각이어서 정리하는데 애를 먹고있습니다. 사실 이부분이 가장 큰 문제입니다. key:value 쌍을 항목별로 따로 정리하는 방법이 있을까요?

1 답변

  • 그냥 pd.DataFrame 생성자의 인자로 딕셔너리 리스트 넘겨주면, 알아서 데이터프레임으로 만들어 줍니다.

    >>> data = [
        {
            "Name" : "Jerry",
            "No." : 33425,
            "Type" : "Programmer"
        },
        {
            "Name" : "Petter",
            "No." : 55324,
            "Sex" : "Male"
        }]
    >>> df = pd.DataFrame(data)
    >>> df
         Name    No.   Sex        Type
    0   Jerry  33425   NaN  Programmer
    1  Petter  55324  Male         NaN
    

    여기서 key 가 없는 것들은 위 예에서 보는 것처럼 NaN 으로 들어가는데, 그건 각 컬럼마다 알아서 처리해야 할 것 같아요. Sex 의 경우에는 NaN알수없음으로 대체해 주던가, Type 같은 건 Unknown 같은 걸로 대체해 주던가... 용도에 따라 잘 해줘야겠죠. 대체해 줄 때는 fillna 함수 쓸 수 있겠고요.

    • pandas 모듈 내부에 함수가 있었군요! 바보같이 이걸 csv로 만들어서 작업 한번 더할뻔했네요... 정말 감사드립니다 알 수 없는 사용자 2020.6.15 08:41
    • 파이썬 라이브러리를 활용한 데이터분석 이랄지, 판다스 문서랄지, 데이터사이언스스쿨 이랄지 설명이 잘 되어 있는 책이나 문서, 코스를 한번 쭉 정독해 보시길... (한번 정독에 다 외울수는 없는데, 이런 게 있었구나 하는 기억은 날거에요.) nowp 2020.6.15 10:17

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)