【Pandas】Pandas의 객체를 Python의 사전이나 목록으로 바꾼다.
안녕하세요, 마유미입니다.
Pandas에 대한 기사를 시리즈로 작성하고 있습니다.
이번은 제34회째가 됩니다.
이번에는 이전에 사용한 데이터와 동일한 것을 사용합니다.
Pandas의 객체를 Python의 사전이나 목록으로 바꾸는 방법을 작성해 보겠습니다.
Python의 사전이나 리스트의 취급은 익숙한 분이 많다고 생각하므로, 변환 후, 여러가지 메소드를 사용하거나 해 보세요.
그럼 바로 시작하겠습니다.
이번에 사용하는 데이터
마지막 기사 과 같은 데이터를 사용합니다.
미국 학교 당 SAT의 평균 점수를 조사한 데이터입니다.
SAT란 일본의 센터 시험과 같은 것도 싶네요.
(웹상에서 갱신되고 있는 사이트로부터 최신의 CSV 데이터를 읽는 방법을 모르는 분은 마지막 기사 를 참고해 주세요.)
Pandas 객체를 Python 객체로 변환하는 방법
파이썬 목록으로 변환
.tolist() 메소드(to와 list 사이에 언더바가 없는 것에 주의)를 사용하면 Python의 리스트형 데이터로 변환할 수 있습니다
SchoolName 라벨이 붙은 칼럼을 리스트형 데이터로 합니다.
파이썬 사전으로 변환
이제 .to_dict() 메소드를 사용하여 사전 데이터로 변환해 보겠습니다.
여기서 주의하는 것은, 사전형 데이터로 했을 때에 만약 key 가 중복했을 경우, 마지막 key 만이 사용된 사전형 데이터가 된다고 하는 것입니다.
이번은 디폴트의 인덱스(0으로부터 시작되는 인덱스)를 그대로 사용했으므로, 중복하는 것은 없습니다만, 만약 인덱스를 커스터마이즈 할 때에는 주의가 필요합니다.
데이터 형식을 정렬해 보기
단, 이번에 읽은 데이터의 SchoolName은 포맷이 통일되어 있지 않습니다.
그리고 당신은 미인이지만 일에는 어려운 상사에게 아래와 같은 일을 전해졌습니다.
.join() 메소드
인용 소스 : w3schools
.join()은 Python 메서드이지만 인수에 Pandas Series를 전달할 수도 있습니다.
각 학교 이름을 ','(쉼표와 공백)로 구분하여 하나의 문자열로 전달하고 싶다면
", ".join(df["コラム名"])
실행 결과는 다음과 같습니다.
title() 메소드를 사용하면 각 단어의 머리글자를 대문자로 지정할 수 있습니다. (.title() 메소드는 단어와 단어 사이의 공백에 따라 각각을 다른 단어로 인식하고 이니셜을 대문자로 고쳐줍니다.)
다만, Pandas의 오브젝트에 Python의 캐릭터 라인에 관한 메소드를 사용할 때는, 사이에 「.str」가 필요합니다.
(.str은 이 기사에서 자세히 설명합니다.)
",".join(df["コラム名"].str.title())
모든 학교명의 머리글자가 대문자가 되었습니다.
.sort_values()
.drop_duplicates()
둘 다 Pandas 메서드이므로 이전에 .title() (Python 메서드)과 Series를 연결할 때 필요했던 '.str()'은 위의 메서드를 사용할 때는 필요하지 않습니다.
학교명이 같은 형식으로 통일되어 중복되는 것은 시작되어 알파벳순으로 늘어놓을 수 있었습니다.
요약
이번 기사는 이 정도로 끝나겠네요.
다음 기사에서는 jupyter notebook이라도 이것 만진 데이터를 CSV 파일에 쓰는 방법을 쓰겠습니다.
Reference
이 문제에 관하여(【Pandas】Pandas의 객체를 Python의 사전이나 목록으로 바꾼다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Mayumi_Pythonista/items/3f95bb426c4c0c56c3ad
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
파이썬 목록으로 변환
.tolist() 메소드(to와 list 사이에 언더바가 없는 것에 주의)를 사용하면 Python의 리스트형 데이터로 변환할 수 있습니다
SchoolName 라벨이 붙은 칼럼을 리스트형 데이터로 합니다.
파이썬 사전으로 변환
이제 .to_dict() 메소드를 사용하여 사전 데이터로 변환해 보겠습니다.
여기서 주의하는 것은, 사전형 데이터로 했을 때에 만약 key 가 중복했을 경우, 마지막 key 만이 사용된 사전형 데이터가 된다고 하는 것입니다.
이번은 디폴트의 인덱스(0으로부터 시작되는 인덱스)를 그대로 사용했으므로, 중복하는 것은 없습니다만, 만약 인덱스를 커스터마이즈 할 때에는 주의가 필요합니다.
데이터 형식을 정렬해 보기
단, 이번에 읽은 데이터의 SchoolName은 포맷이 통일되어 있지 않습니다.
그리고 당신은 미인이지만 일에는 어려운 상사에게 아래와 같은 일을 전해졌습니다.
.join() 메소드
인용 소스 : w3schools
.join()은 Python 메서드이지만 인수에 Pandas Series를 전달할 수도 있습니다.
각 학교 이름을 ','(쉼표와 공백)로 구분하여 하나의 문자열로 전달하고 싶다면
", ".join(df["コラム名"])
실행 결과는 다음과 같습니다.
title() 메소드를 사용하면 각 단어의 머리글자를 대문자로 지정할 수 있습니다. (.title() 메소드는 단어와 단어 사이의 공백에 따라 각각을 다른 단어로 인식하고 이니셜을 대문자로 고쳐줍니다.)
다만, Pandas의 오브젝트에 Python의 캐릭터 라인에 관한 메소드를 사용할 때는, 사이에 「.str」가 필요합니다.
(.str은 이 기사에서 자세히 설명합니다.)
",".join(df["コラム名"].str.title())
모든 학교명의 머리글자가 대문자가 되었습니다.
.sort_values()
.drop_duplicates()
둘 다 Pandas 메서드이므로 이전에 .title() (Python 메서드)과 Series를 연결할 때 필요했던 '.str()'은 위의 메서드를 사용할 때는 필요하지 않습니다.
학교명이 같은 형식으로 통일되어 중복되는 것은 시작되어 알파벳순으로 늘어놓을 수 있었습니다.
요약
이번 기사는 이 정도로 끝나겠네요.
다음 기사에서는 jupyter notebook이라도 이것 만진 데이터를 CSV 파일에 쓰는 방법을 쓰겠습니다.
Reference
이 문제에 관하여(【Pandas】Pandas의 객체를 Python의 사전이나 목록으로 바꾼다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Mayumi_Pythonista/items/3f95bb426c4c0c56c3ad
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
", ".join(df["コラム名"])
",".join(df["コラム名"].str.title())
이번 기사는 이 정도로 끝나겠네요.
다음 기사에서는 jupyter notebook이라도 이것 만진 데이터를 CSV 파일에 쓰는 방법을 쓰겠습니다.
Reference
이 문제에 관하여(【Pandas】Pandas의 객체를 Python의 사전이나 목록으로 바꾼다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Mayumi_Pythonista/items/3f95bb426c4c0c56c3ad텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)