MyDataScience 사용 가이드
데이터를 열고, 살펴보고, 그래프를 그리고, 모델을 만들기까지 기능별로 정리했습니다. 같은 내용을 앱 안에서도 도움말 → 사용 가이드 로 볼 수 있습니다.
01
데이터 열기 & 저장
파일 열기
- 새 데이터 (Ctrl+N) — 화면을 비우고 새 파일을 엽니다
- 파일 열기 (Ctrl+O) — CSV 또는 Excel(.xlsx) 파일 불러오기
- 데이터 추가 X (Ctrl+X) — 현재 데이터 오른쪽에 컬럼을 이어 붙입니다
- 데이터 추가 Y (Ctrl+Y) — 현재 데이터 아래쪽에 행을 이어 붙입니다
- Join / Merge (Ctrl+J) — 키 컬럼 기준 두 데이터 병합 (Inner / Left / Right / Outer)
파일 저장
- 저장 (Ctrl+S) — 현재 데이터를 CSV로 저장
- 분할 저장 — 데이터를 n등분하여 여러 파일로 나눠 저장
💡 100만 행 이상 대용량 파일은 DuckDB가 자동으로 고속 처리합니다. 별도 설정이 필요하지 않습니다.
되돌리기
- Return to Previous (Ctrl+Z) — 직전 상태로 되돌리기 (최대 10단계)
- Return to Origin — 처음 로드한 원본 상태로 완전 복원


02
테이블 탐색
컬럼 선택
- 헤더 클릭 — 해당 컬럼 선택 (파란색 하이라이트)
- Shift + 헤더 클릭 — 첫 번째 선택 컬럼부터 범위 선택
- Ctrl + 헤더 클릭 — 원하는 컬럼만 개별 추가 선택
- 헤더 드래그 (좌↔우) — 마우스로 컬럼 순서 변경
데이터 확인
- 하단 상태바에 현재 행 × 열 수가 표시됩니다
- 100행 초과 시 상단·중간·하단 샘플만 표시 (원본 데이터는 유지)
- 헤더 우클릭 → Statistics Summary — 해당 컬럼의 평균·표준편차·최소·최대·분위수 확인
데이터 유형 확인 방법
각 컬럼의 데이터 유형(dtype)·결측값 수·메모리 사용량을 확인하려면:
- 메뉴 → Data Operation → Data information — 전체 컬럼 유형·결측·메모리를 한눈에
- 메뉴 → Data Operation → Data Statistic Result — 전체 컬럼 기술통계 (describe)
데이터 유형별 가능한 기능
- 숫자형 (int/float) — 정렬·필터·정규화·계산·Statistics Summary·시각화 전부 가능
- 문자형 (object) — 필터·삭제·그룹바이·빈도 시각화 가능
- 날짜형 (datetime) — 시계열 정렬·필터 가능


03
데이터 조작
| 메뉴 항목 | 설명 |
|---|---|
| Sort Ascending | 오름차순 정렬 |
| Sort Descending | 내림차순 정렬 |
| Filter Values | 값 목록 선택 또는 범위 조건 필터 |
| Delete Column(s) | 선택 컬럼 삭제 (다중 선택 가능) |
| Rename Column | 컬럼 이름 변경 |
| Normalize | Min-Max (0~1) 또는 Z-Score 정규화 |
| Calculate | 두 컬럼 사칙연산 → 새 컬럼 추가 |
| Statistics Summary | 평균·표준편차·최소·최대·분위수 |
| Visualize (Ctrl+우클릭) | 선/막대/산점도/히스토그램/박스플롯 — Ctrl 키를 누른 채 우클릭해야 나타남 |
| Group By | 그룹별 집계 (합계·평균·최대·최소·개수) |
| Correlation Matrix | 수치 컬럼 간 상관관계 히트맵 |
| Probability Distribution | 정규·포아송·지수 분포 피팅 |
💡 Ctrl+클릭으로 여러 컬럼 선택 → 우클릭: 일괄 삭제·계산 / Ctrl+우클릭: 시각화
필터 사용법
- 숫자형: 범위 (최솟값~최댓값) 또는 조건 (≥, ≤, =) 입력
- 문자형: 포함할 값을 체크박스로 선택
- 필터 해제: 헤더 우클릭 → Remove Filter 또는 Return to Previous



04
시각화
컬럼을 고른 뒤 Ctrl + 헤더 우클릭
컬럼 헤더를 먼저 선택한 뒤 Ctrl 키만 누른 채로 헤더를 우클릭하면 메뉴에 그래프 항목이 한 줄 나타납니다.
| 고른 컬럼 | 메뉴에 나오는 문구 | 그려지는 그래프 |
|---|---|---|
| 1개 | plot Column 컬럼명 | 숫자 컬럼이면 선 그래프·히스토그램·박스플롯을 한 화면에 함께. 문자 컬럼이면 값 빈도 막대그래프 |
| 2개 | plot Columns for Two Columns A and B | 둘 다 숫자면 산점도. 한쪽이 문자면 항목별 값 분포와 평균. 둘 다 문자면 조합별 빈도 |
| 3개 이상 | plot Multiple Columns | 컬럼마다 한 칸씩 나눠서 함께 그립니다 |
⚠ Ctrl 없이 우클릭하면 정렬·필터·삭제 메뉴가 열립니다. 컬럼을 Ctrl+클릭으로 고른 뒤 손을 뗐다면, 우클릭하기 전에 Ctrl 을 다시 누르세요. Shift 가 함께 눌려 있어도 그래프 항목이 나오지 않습니다.
💡 그래프 종류는 고르지 않습니다 — 고른 컬럼의 자료형을 보고 앱이 정합니다. 숫자여야 할 컬럼이 문자로 읽혀 있으면 기대와 다른 그래프가 나오니, 그럴 때는 자료형부터 확인하세요.
그래프는 브라우저 새 탭에 열립니다
그래프는 앱 창이 아니라 기본 브라우저의 새 탭에 그림으로 열립니다. 앱이 응답하지 않는 것처럼 보이면 브라우저를 확인해 보세요.
저장하려면 그림 위에서 우클릭 → 이미지를 다른 이름으로 저장을 쓰세요.
상관관계 한눈에 보기
메뉴바 Correlation → Linear Correlation Matrix — 수치 컬럼들끼리 얼마나 함께 움직이는지를 한 장의 표로 보여줍니다. 값이 1에 가까우면 같이 오르고, -1에 가까우면 반대로 움직이며, 0에 가까우면 관계가 거의 없다는 뜻입니다.
Data Analysis 고급 시각화
- 분포 시각화 — 히스토그램 + KDE 곡선
- 상관 히트맵 — 수치 컬럼 간 피어슨 상관계수
- Pairplot — 컬럼 쌍의 산점도 행렬
- 이상치 시각화 — IQR 기반 박스플롯



05
코드 에디터
메뉴 → Calculate Data로 파이썬 코드를 직접 작성하고 실행합니다.
기본 변수 — 직접 실행해서 확인해보세요
result = df # df(현재 데이터)를 result에 담기
# → 아래 결과창에 테이블로 표시되고
# Return Result 버튼으로 메인 테이블에 반영 가능df— 현재 메인 테이블에 로드된 전체 데이터 (pandas DataFrame)result— 코드 실행 후 결과창에 표시되는 값. DataFrame이면 표로, 숫자·문자면 텍스트로 출력됩니다
자주 쓰는 pandas 코드
result = df.head() # 상위 5행
result = df.shape # (행 수, 열 수)
result = df.describe() # 기술통계
result = df.dtypes # 컬럼별 데이터 유형
result = df['컬럼명'] # 단일 컬럼
result = df[df['나이'] > 30] # 조건 필터
result = df.groupby('지역')['매출'].sum() # 그룹 집계
result = df.sort_values('매출', ascending=False) # 정렬
result = df.dropna() # 결측값 제거
result = df.fillna(0) # 결측값 → 0mIO — 결과 출력 & UI 함수
| 함수 | 설명 |
|---|---|
mIO.print(값) | 텍스트·DataFrame을 결과창에 출력 |
mIO.show_df(df2) | 계산 결과를 메인 테이블에 즉시 반영 |
mIO.form([{'label':'이름','type':'text'}]) | 입력 폼 UI 생성 |
mIO.sliders([{'label':'k','min':2,'max':10}]) | 슬라이더 UI 생성 |
mIO.progress(현재, 전체) | 진행률 표시 |
mIO.interactive_plot(fig) | matplotlib 그래프를 새 창에 표시 |
버튼 설명 (1줄)
| 버튼 | 기능 |
|---|---|
| Run | 편집창 코드 전체 실행 |
| Code Refactor | 중복·오류·연결 끊긴 코드 자동 정리 |
| Return Result | result에 담긴 DataFrame을 메인 테이블에 반영 |
| Save Result | result DataFrame을 CSV 파일로 저장 |
| 🌐 | Claude / ChatGPT 웹 사이트 열기 (AI 질문 보조) |
버튼 설명 (2줄 — 파일)
| 버튼 | 기능 |
|---|---|
| Load File | 저장된 스크립트를 불러와 편집창 내용 교체 |
| Append File | 저장된 스크립트를 편집창 끝에 이어 붙임 |
| Save (Overwrite) | 현재 파일에 덮어쓰기 저장 (파일 없으면 Save As) |
| Save As... | 새 이름으로 저장 (.mpy / .py) |
💡 오류가 발생하면 메시지를 그대로 복사해 🧠 AI 지식으로 물어보세요.

06
AI 지식
API 키나 구독 쿼터 없이, ChatGPT/Claude 등 평소 쓰는 외부 AI로 MDS 코드를 만듭니다.
사용 방법
- 🧠 AI 지식 버튼 클릭 → 안내 문서가 클립보드에 복사되고 AI 사이트가 열림
- 새 대화창에 Ctrl+V 붙여넣기
- 분석 과제를 설명하면 완성된 코드를 받음
- 받은 코드를 편집창에 붙여넣고 ▶ Run
효과적인 요청 방법
- ✅ 구체적: "나이 컬럼의 평균을 구해서 mIO.print로 출력해줘"
- ✅ 목적 포함: "매출 예측 모델을 RandomForest로 만들어줘"
- ❌ 모호함: "분석해줘" → 원하는 결과를 구체적으로 설명하세요
💡 받은 코드를 붙여넣고 Run했을 때 오류가 나면, 오류 메시지를 그대로 AI에게 다시 물어보세요.
07
Data Analysis
데이터를 열면 메뉴바에 Data Analysis 항목이 자동으로 나타납니다.
EDA (탐색적 데이터 분석)
- 분포 시각화 — 히스토그램 + KDE 곡선
- 상관 히트맵 — 수치 컬럼 간 피어슨 상관계수 시각화
- Pairplot — 모든 컬럼 조합의 산점도 행렬
- 이상치 시각화 — IQR 기반 박스플롯
전처리
- 결측값: 행 제거 / 평균 대체 / 중앙값 대체
- 이상치 제거: IQR / Z-Score / IsolationForest
- 스케일링: Standard / MinMax / Robust
- 인코딩: One-Hot / Label / Ordinal
통계 검정
- 기술통계 (평균·표준편차·분위수)
- 가설 검정: t-test, Mann-Whitney U, ANOVA
- Y 영향도: 컬럼별 목표 변수 영향 순위
- 분포 적합: Normal / Poisson / Exponential / Binomial
회귀 분석
- 선형 / Ridge / Lasso 회귀
- 5-fold 교차 검증 (R², RMSE)
- VIF 다중공선성 분석 (statsmodels)
💡 모든 분석 결과는 HTML 보고서 형태로 새 창에 표시됩니다.

08
Machine Learning
데이터를 열면 메뉴바에 Machine Learning 항목이 자동으로 나타납니다.
시작 방법 — 설정 창이 차례로 열립니다
메뉴바 Machine Learning 아래에 Supervised(지도학습)와 Unsupervised(비지도학습) 두 묶음이 있습니다. 항목을 고르면 설정 창이 차례로 뜹니다. 중간에 취소를 누르면 그 자리에서 멈춥니다.
| 순서 | 창 제목 | 고르는 것 |
|---|---|---|
| 1 | (메뉴) | Supervised / Unsupervised 에서 알고리즘 |
| 2 | Step 2 — Select Target (Y) | 예측하려는 컬럼 (지도학습만) |
| 3 | Step 3 — Select Features (X) | 예측에 쓸 입력 컬럼들 |
| 4 | Step 4 — Preprocessing Options | 결측값 처리 · 스케일링 |
| 5 | … Hyperparameters | 알고리즘별 설정 (기본값으로 두어도 됩니다) |
⚠ 전처리는 자동이 아닙니다. Step 4 에서 직접 고릅니다. 결측값은 행 삭제(Drop rows)가 기본이라 빈칸이 있는 행이 분석에서 빠집니다 — 빈칸이 많은 컬럼을 입력에 넣으면 데이터가 크게 줄 수 있으니, 먼저 Data Operation → Data information 으로 결측 개수를 확인하세요.
💡 스케일링은 트리 계열(Random Forest, Decision Tree, XGBoost)에는 필요 없습니다. 거리로 계산하는 KNN·K-Means·PCA 에서는 켜는 편이 좋습니다.
지도학습 — 회귀 (수치 예측)
- Random Forest Regression — 교차검증 + Feature Importance
- XGBoost Regression
지도학습 — 분류
- Logistic Regression — ROC 곡선
- Decision Tree / RF — 두 모델 성능 비교
- XGBoost / KNN — 혼동행렬(Confusion Matrix)
비지도학습 — 군집
- K-Means — 실루엣·엘보 분석으로 최적 k 자동 탐색
- DBSCAN — 밀도 기반 군집 (노이즈 포인트 탐지)
- Hierarchical — 덴드로그램 시각화
차원 축소
- PCA — Scree plot + Biplot (주성분 기여도 시각화)
- t-SNE — 2D/3D 임베딩으로 클러스터 패턴 확인
- Isolation Forest — 이상 데이터 탐지
💡 Feature Importance로 어떤 변수가 예측에 가장 중요한지 확인하세요.

09
단축키 목록
파일 / 데이터
| 단축키 | 기능 |
|---|---|
| Ctrl+N | 새 데이터 (화면 초기화) |
| Ctrl+O | CSV / Excel 파일 열기 |
| Ctrl+X | 데이터 추가 X (컬럼 방향 병합) |
| Ctrl+Y | 데이터 추가 Y (행 방향 병합) |
| Ctrl+J | Join / Merge (키 컬럼 병합) |
| Ctrl+S | 현재 데이터 CSV 저장 |
| Ctrl+Z | Return to Previous (되돌리기) |
UI / 도움말
| 단축키 | 기능 |
|---|---|
| F1 | 사용 가이드 열기 (본 화면) |
| F2 | Feature Tour (기능 슬라이드) |
코드 에디터
| 단축키 | 기능 |
|---|---|
| Ctrl+Scroll | 편집창 폰트 크기 조절 |
테이블 조작
| 조작 | 기능 |
|---|---|
| 헤더 클릭 | 컬럼 선택 |
| Shift + 헤더 클릭 | 범위 선택 |
| Ctrl + 헤더 클릭 | 개별 추가 선택 |
| 헤더 드래그 (좌↔우) | 컬럼 순서 변경 |
| 헤더 우클릭 | 정렬·필터·삭제·계산·통계 등 조작 메뉴 |
| Ctrl + 헤더 우클릭 | 시각화 (그래프) 메뉴 |
10
확장 (Extension)
MDS에 들어 있지 않은 기능이 필요할 때, 파이썬 패키지를 설치해 코드 에디터에서 쓸 수 있습니다.
여는 법
메뉴바 확장 관리 → Extension Manager 열기…
설치하는 두 가지 방법
- PyPI에서 만들기… — 패키지 이름(예:
soundfile)을 넣으면 인터넷에서 받아 설치합니다 - 설치(.mdsx)… — 배포된 확장 파일을 직접 설치합니다
💡 설치한 뒤에는 MDS를 다시 시작해야 반영됩니다.
설치가 거부되는 경우
numpy · pandas · scipy · PySide6 는 MDS에 들어 있는 버전으로 고정돼 있습니다. 이들의 다른 버전을 요구하는 확장은 설치 단계에서 거부됩니다.
설치는 됐는데 나중에 알 수 없는 오류로 깨지는 것보다, 처음부터 막는 편이 안전하기 때문입니다. 거부된 경우 그 확장은 현재 버전의 MDS와 함께 쓸 수 없습니다.
제거
Extension Manager에서 목록의 확장을 고르고 제거를 누릅니다. 되돌릴 수 없으며, 제거 후에도 MDS를 다시 시작해야 반영됩니다.

11
자주 묻는 질문
Q. 데이터가 너무 많아서 느린데 어떻게 하나요?
100만 행 이상의 파일은 DuckDB가 자동으로 고속 처리합니다. 테이블에는 샘플만 표시되지만 실제 연산은 전체 데이터를 사용합니다. 파일 오픈 시 '대용량' 경고가 나오면 New → Calculate Data 방식을 따르세요.
Q. 실수로 컬럼을 삭제했어요!
메뉴 → Return to Previous (Ctrl+Z)로 최대 10단계까지 되돌릴 수 있습니다. 처음 로드한 상태로 돌아가려면 Return to Origin을 사용하세요.
Q. 코드 에디터에서 오류가 발생했어요
1) Code Refactor 버튼으로 코드 구조 오류를 자동 정리합니다.
2) 오류 메시지를 그대로 복사해 🧠 AI 지식(외부 AI)에 물어보면 수정 코드를 받을 수 있습니다.
Q. AI로 코드를 만들려면 API 키가 필요한가요?
필요 없습니다. 🧠 AI 지식 버튼을 누르면 ChatGPT/Claude 등 평소 쓰는 AI 웹사이트가 열리고, 안내 문서가 클립보드에 자동으로 복사됩니다. 붙여넣고 과제를 설명하면 코드를 받을 수 있습니다.
Q. 분석 결과를 저장하려면?
• 그래프: 브라우저 탭에 열린 그림 위에서 우클릭 → 이미지를 다른 이름으로 저장 (PNG)
• 데이터: 메뉴 → Save (CSV)
• HTML 보고서: 분석 결과 창 → 우클릭 → 저장
• 코드: 코드 에디터 → Save Result
Q. Data Analysis / Machine Learning 메뉴가 보이지 않아요
이 메뉴들은 데이터를 로드한 후에만 메뉴바에 나타납니다. 파일을 먼저 열어주세요.
Q. 샘플 데이터는 어디서 구할 수 있나요?
시작 화면(데이터 없을 때)에서 월별 판매 데이터 또는 학생 성적 데이터 버튼을 클릭하면 연습용 샘플이 자동으로 로드됩니다.
Q. 필터를 해제하려면?
헤더 우클릭 → Remove Filter를 선택하거나 Return to Previous (Ctrl+Z)로 되돌릴 수 있습니다.
12
베타 · 업데이트 · 문의
지금은 베타 버전입니다
정식 출시 전, 테스트를 위해 공개한 버전입니다. 실제 데이터로 사용하실 수 있지만 아직 다듬는 중인 부분이 있을 수 있습니다.
⚠️ 중요한 파일은 사본을 두고 사용해 주세요.
새 버전이 나오면
앱을 켰을 때 데이터 표 위에 새 버전 안내 줄이 나타납니다. 지금 받기를 누르면 브라우저에서 다운로드 페이지가 열립니다.
받은 설치 파일을 그대로 실행하면 덮어쓰기 설치가 됩니다. 따로 지우실 필요가 없고, My Data · My Python 폴더의 작업물은 그대로 보존됩니다.
나중에를 누르면 이번 실행 동안만 숨겨지고, 다음에 앱을 켜면 다시 나타납니다.
오류나 불편한 점이 있으면
메일로 알려 주세요 — sdsl_user@sdsl.co.kr
세 줄이면 충분합니다.
- 무엇을 하려 했는지
- 무엇을 기대했는지
- 실제로 무엇이 나왔는지
보내주신 의견은 정식 출시 전에 반영합니다.

Beta
정식 출시 전, 테스트를 위한 베타 버전입니다. 중요한 파일은 사본을 두고 사용해 주세요. 가이드에서 찾지 못한 내용이나 이상한 동작이 있으면 sdsl_user@sdsl.co.kr 로 알려 주세요. 보내주신 의견은 정식 출시 전에 반영합니다.
