전체 글
-
[scikit-learn] 파이썬 Gradient Boosting 모델로 유방암 진단 기계학습 모델 만들기Python/기계학습 2023. 6. 14. 08:42
Gradient Boosting 모델로 유방암 진단 기계학습 시스템 만들기 기계학습(Machine Learning, ML)이 활용되는 분야 중 대표적인 것을 꼽자면 의료 분야를 빼놓을 수 없습니다. 실제로 많은 기계학습 알고리즘이 진단 보조, 환자 응급도 분류 등에 이용되고 있는데요, 이번에는 그런 활용 중 기초적인 기술을 한번 살펴보도록 하겠습니다. 파이썬(Python)을 이용한다면, 유방암 조직 사진을 분석해서 암이 있는지 진단할 수 있는 모델을 만들 수 있습니다. 이런 작업은 원래 의사가 하지만, 의사도 사람인지라 사람이 일으키는 오기재 등의 문제(Human Error)를 피해갈 수 없습니다. 이런 한계를 뛰어넘기 위해 개발자들이 암 진단 모델을 개발하고 있는데요, 현재 가장 뛰어난 분류 모델은 실..
-
[Seaborn, Plotly] 파이썬으로 Volcano plot 그려보기Python/시각화 2023. 6. 12. 10:14
파이썬으로 Volcano plot 그려보기 파이썬(Python)은 다양한 분야에서 사용되는 프로그래밍 언어인데, 특히 생물정보학(Bioinformatics)에는 다른 프로그래밍 언어에 비해서 점유율이 높은 편입니다. 그래서, 간혹 시각화 패키지를 살펴보면 생물정보학에 특화된 기능이 몇 가지씩 보이고는 하지요. 이번에는 그중에서 화산 플롯(Volcano plot)을 그려보는 방법을 알아보도록 하겠습니다. Volcano plot은 x축에 효과 크기(Effect size)를 두고, y축으로는 p-value를 놓는 산점도(scatterplot)의 일종입니다. 이름이 생소할지 몰라도 기본은 산점도이기 때문에 여느 시각화 패키지를 이용해서 scatterplot 함수를 이용해 손쉽게 구현할 수 있지요. Volcano..
-
[Folium] 파이썬 Folium을 이용해서 마커를 찍는 방법Python/시각화 2023. 6. 9. 10:46
파이썬 Folium을 이용해서 마커를 찍는 방법 파이썬(Python)의 지도 시각화를 위해 흔히 사용되는 패키지인 폴리움(Folium) 이야기입니다. Folium은 단순히 지도를 띄워 주는 기능부터 시작해서 GeoJSON 파일을 이용해 특정 도시 구획을 강조하는 기능, 그리고 마커(Marker)를 찍어서 특정 지점에 대한 설명을 하는 기능 등이 있습니다. 이번에는 Folium에서 제공하는 CircleMarker 라는 기능을 이용해서 원하는 위치에 마커를 찍어 보는 작업을 해 보겠습니다. 이번 시각화에 사용한 데이터는 서울특별시의 행정구역 정보가 담겨있는 GeoJSON 데이터(바로가기)와 서울특별시 자동심장충격기(AED) 정보 조회 데이터(바로가기)입니다. 이를 이용해서, 서울에는 어디에 AED가 비치되어..
-
[Seaborn] 파이썬 씨본을 이용한 히트맵 시각화 해보기Python/시각화 2023. 6. 7. 21:33
Seaborn을 이용한 히트맵 시각화 해보기 파이썬(Python)에는 맷플롯립(Matplotlib)이라는 괜찮은 시각화 패키지가 있습니다. 하지만, Matplotlib은 기본 배색이 별로라거나, 몇몇 그래프나 옵션을 이용하기 불편하다는 점이 있어서 별도의 패키지를 쓰는 경우가 많습니다. 이번에는 그 중에서 씨본(Seaborn)이라는 패키지를 이용해 보려 합니다. 이 패키지는 정적 그래프를 그리는데는 부족함 없는 기능과, 제법 괜찮은 기본 컬러팔레트를 가지고 있어서 누구나 손쉽게 고급스러운 그래프를 그릴 수 있도록 해 줍니다. 그리고, Matplotlib과의 호환성이 좋은 편이라 코드를 섞어 써도 된다는 장점이 있답니다. 이번에는 Seaborn을 이용해서 시각화를 하기 위해, Seaborn에서 기본 제공하..
-
[Selenium] 파이썬 셀레니움을 이용한 카카오맵 크롤링Python/크롤링 2023. 6. 2. 15:44
셀레니움을 이용한 카카오맵 크롤링 지도 크롤링 하면 대개 네이버 지도를 주로 사용합니다만, 파이썬(Python) 동적 크롤링으로는 카카오맵 또한 크롤링을 할 수 있습니다. 개인적으로는 광고가 검색결과와 분리되어 있는 점, 기본 화면에서 바로 복사할 수 있는 정보가 많다는 점에서 카카오맵을 선호하지만, 네이버 지도에 비해서 등록된 업체의 수가 적다는 점은 단점으로 꼽히니 구하고자 하는 데이터의 특성에 따라 적절하게 고르는게 좋겠습니다. 카카오맵 크롤링 또한 셀레니움(selenium)이라고 하는 파이썬 패키지를 이용해서 진행합니다. 특정 키워드를 중심으로 지도 페이지를 검색한 다음, 검색 결과의 모든 정보를 복사하는 과정을 수행합니다. 이렇게 해당 페이지의 모든 정보를 복사했다면 더이상 불가능할 때까지 다음..
-
[datetime] 파이썬 datetime 패키지를 이용해 날짜 형식 변환 또는 추출하기Python/파이썬 기초 2023. 5. 23. 13:20
파이썬 datetime 패키지를 이용해 날짜 형식 변환 또는 추출하기 엑셀 등의 프로그램에서는 YYYY-MM-DD 형식으로 날짜를 적으면 셀 양식에 따라 날짜임을 자동으로 인식해서 보여주는 기능이 있습니다. 파이썬(Python)에는 이러한 기능이 없고, 날짜를 별도의 자료형으로 처리하는데, 이는 내장 패키지인 datetime을 이용합니다. 이번에는 datetime 패키지를 이용해서 날짜 형식을 변환하거나 추출하는 방법을 알아보도록 하겠습니다. datetime 패키지의 datetime 모듈(이름이 같아서 헷갈리니 주의)을 이용하면 날짜 자료형을 다루거나 변환을 할 수 있습니다. 예를 들어서, 특정 형식의 날짜를 datetime 자료형으로 바꾸고 싶다면 datetime.strptime 함수를 이용하면 됩니다..
-
[Folium] 파이썬 Folium을 이용해서 지도 시각화를 하는 방법Python/시각화 2023. 5. 22. 18:02
파이썬 Folium을 이용해서 지도 시각화를 하는 방법 파이썬(Python)에서는 위경도 데이터를 이용해서 지도 위에 시각화를 할 수 있습니다. 이런 작업을 할 수 있는 패키지로는 대표적으로 폴리움(Folium)이 존재하는데, 이를 이용해서 오픈스트리트맵(OpenStreetMap) 기반의 지도 위에 GeoJSON 파일에 기록된 위경도 데이터를 기준으로 표기를 해 보는 방법을 알아보겠습니다. 이번 시각화에는 서울특별시 행정동 지도를 GeoJSON 파일로 정리한 것, 그중에서 송파구에 해당하는 정보를 이용해 위경도 정보를 얻어보겠습니다. 표기할 정보는 송파구의 인구 대비 코로나19 확진자 정보입니다. 행정동 정보: https://github.com/vuski/admdongkor/blob/master/ver2..
-
[Pandas] 판다스 데이터프레임을 읽을 때, thousands 패러미터로 숫자 구분자 콤마를 빼보자Python/Pandas, Numpy 2023. 5. 18. 10:15
판다스 데이터프레임을 읽을 때, thousands 패러미터로 숫자 구분자 콤마를 빼보자 파이썬(Python)에서 데이터를 읽을 때, 가끔씩 숫자인줄 알고 처리했던 데이터가 알고 보니 문자였던 경험이 있을겁니다. 이번에는 그런 상황 중 하나인 숫자 구분자를 처리하는 방법에 대해 알아볼텐데요, 흔히 천 단위로 숫자에 표기하는 구분자 콤마(comma, 반점, ',')를 판다스 데이터프레임(Pandas DataFrame)에서 제거하는 방법을 한번 살펴보겠습니다. 숫자를 표기할 때, 우리는 흔히 천 단위로 콤마를 찍습니다. 1만을 아라비아 숫자로 적는다고 하면, 대개 10,000 으로 표기하는 방식이죠. 외국에도 온점('.')을 찍느냐 반점(',')을 찍느냐 하는 문화적 차이는 있지만 대개 구분자를 찍어 표기합니..