오렌지(Orange)란 ?
Orange는 오픈 소스 소프트웨어로 데이터 처리, 시각화, 그리고 머신러닝을 직관적으로 적용할 수 있는 강력한 프로그램입니다. 사용자 친화적인 인터페이스를 갖추고 있어 프로그래밍 지식이 부족한 사용자도 쉽게 활용할 수 있으며, 데이터 과학과 분석을 위한 다양한 도구들을 제공합니다.
Orange는 단순히 교육용 툴로 시작되었으나, 최근 몇 년 사이 그 기능성과 완성도가 크게 향상되었습니다. 작년(2023)부터는 기업과 대학원에서도 널리 사용되고 있으며, 데이터 분석과 머신러닝 작업을 보다 효율적으로 수행할 수 있는 환경을 제공하고 있습니다. 특히, 데이터를 끌어다 놓기만 하면 되는 시각적 프로그래밍 방식 덕분에 복잡한 데이터 파이프라인을 쉽게 구성할 수 있어 초보자와 전문가 모두에게 큰 인기를 끌고 있습니다.
또한, Orange는 다양한 플러그인과 확장 기능을 통해 사용자가 원하는 특정 분석 작업이나 알고리즘을 추가로 활용할 수 있는 유연성을 제공합니다. 예를 들어, 텍스트 마이닝, 이미지 분석, 생물정보학 등 여러 전문 분야에 맞춤화된 도구들을 제공하여 특정 분야의 요구사항을 충족시킬 수 있습니다. 이를 통해 Orange는 교육 현장뿐만 아니라 실제 연구 및 산업 환경에서도 유용한 도구로 자리매김하고 있습니다.
결론적으로, Orange는 데이터 분석과 머신러닝을 위한 강력하고 유연한 솔루션으로, 사용자 친화적인 인터페이스와 다양한 확장 기능을 통해 데이터 과학의 여러 측면을 효과적으로 지원합니다. 데이터 분석을 처음 접하는 사람부터 경험 많은 데이터 과학자에 이르기까지 모두에게 적합한 도구입니다
이제부터 오렌지3를 사용해보겠습니다!
1. 오렌지 설치
오렌지를 설치하려면 아래의 단계를 따라주세요
Windows, macOS, Linux
- 오렌지 공식 웹사이트 내의 다운로드로 이동합니다.(https://orangedatamining.com/download/)
- 다운로드 페이지에서 운영 체제에 맞는 설치 파일을 다운로드합니다.
2. 오렌지 실행
설치가 완료되면, 프로그램을 실행합니다. 프로그램을 처음 실행하면 빈 캔버스와 다양한 위젯이 있는 창이 나타납니다.
단계별 워크플로우 예시
- 사용된 파일
- 군 병원 입원 진료 현황.csv(https://opendata.mnd.go.kr/openinf/sheetview2.jsp?infId=OA-9594)
- 사용된 파일은 위의 링크 또는 아래의 페이지에서 다운로드 가능합니다.
데이터 불러오기
- File 위젯 추가하기
- 캔버스 왼쪽 상단의 'Data' 카테고리에서 'File' 위젯을 드래그하여 캔버스에 놓습니다.
- 'File' 위젯을 더블 클릭하여, 사용할 데이터 파일(.csv, .xlsx 등)을 선택합니다.


데이터 전처리
(해당 예제는 전처리를 하는 상황을 예시로 사용합니다.)
- 데이터 내 오류 수정 및 확인
- 'Transform' 카테고리에서 'Python Script' 위젯을 캔버스에 추가합니다.
- 'Python Script' 위젯을 더블 클릭하여, 데이터 전처리를 위한 코드를 작성합니다.
- 데이터 전처리 과정 예시입니다
- 주어진 자료의 경우 “입원진료건수” 데이터에 일부 문제가 존재합니다. 예를 들어 - 값이 들어있거나, 문자열로 처리되어 있었습니다.
import numpy as np
from Orange.data import Table, Domain, ContinuousVariable, DiscreteVariable, StringVariable
arr = []
for i in in_data:
t = str(i["입원진료건수"])
tmp = ""
for a in t:
if a.isdigit():
tmp += a
if len(tmp):
t = float(tmp)
else:
t = 0.0
arr.append([i[0].value, i[1].value, i[2], t])
print(arr[-1])
print(in_data.domain[2], type(in_data.domain[2]))
domain = Domain([
ContinuousVariable("순번"),
ContinuousVariable("년도"),
in_data.domain[2],
ContinuousVariable("입원진료건수")
])
arr = np.array(arr)
out_data = Table.from_numpy(domain, arr)
- ‘DataTable' 위젯을 추가하고 더블 클릭하여, 데이터가 의도하는 대로 준비 되었는지 확인합니다.


- Select Columns 추가
- 열을 선택하기 위해 ‘Select Columns’ 를 추가합니다

데이터 시각화
- Scatter Plot 위젯 추가하기
- 'Visualize' 카테고리에서 'Scatter Plot' 위젯을 캔버스에 추가합니다.
- 'Select Columns' 위젯의 작은 원을 드래그하여 'Scatter Plot' 위젯에 연결합니다.
- 'Scatter Plot' 위젯을 더블 클릭하여, 시각화를 확인하고 필요한 설정을 조정합니다.


해당 자료의 저작권은 블로그 작성자에게 있습니다. 수업 자료로 사용하는 경우 해당 페이지를 그대로 사용하시고, 무단으로 수정 또는 복제를 금합니다.
'인공지능 · 데이터 과학 > 오렌지3' 카테고리의 다른 글
오렌지3 - 4화 주식 가격 예측 (0) | 2024.08.08 |
---|---|
오렌지3 - 3화 이미지 분류 (0) | 2024.08.06 |
오렌지3 - 2화 인공지능 학습 가이드 (0) | 2024.08.05 |