사람이나 사물이 어떻게 연결되어 있는지 지도처럼 그려서 확인
→ 누가 가장 친구가 많은지, 정보가 어떻게 퍼지는지 한눈에 볼 수 있음
노드(Nodes)와 엣지(Edge)로 연결된 관계
최신 데이터 분석에서 Python 중요성
Python의 장점
- 상용 소프트웨어는 중요한 기능이 제한되는 경우가 많음
- 데이터 분석에서는 전처리 과정이 매우 중요
- 최신 연구 결과와 패키지는 대부분 Python 기반
- 딥러닝 분석은 Python 생태계와의 연계가 사실상 필수
- 라이브러리가 핵심 기반 : NumPy, SciPy
- 최신 네트워크 분석 및 딥러닝 연구는 Python 중심으로 발전
Python 실행 방식
| 파일이름.py(터미널 방식) | 파일이름.ipynb (Jupyter Notebook 방식) | |
| 작업 방식 | 처음부터 끝까지 한 번에 실행하기 (중간에 확인하기 어려움) | 한 칸씩 실행하기 (중간 확인하기 쉬움) |
| 특징 | 터미널에서 실행, 협업에 적합, 프로그램 형태 개발에 유리 | - 코드 실행 결과를 즉시 확인 가능, 셀 단위 실행 가능, 시각화 및 실험에 유리 - 탐색적 데이터 분석(EDA)과 연구에서는 Notebook 방식이 많이 사용 |
| 장점 | - | 개인 연구에 적합, 데이터 분석/머신러닝 실험에 매우 효율적 |
| 단점 | 중간 결과 확인이 어려움, 디버깅이 불편할 수 있음 | - |
| 예 | Google Colab (Github 연결 Google Drive의 파일을 불러오고 저장) |
Python 실습환경으로 Google Colab 소개
- Colab 특징
- Google Drive 기반 Jupyter Notebook 환경
- 별도 설치 없이 웹 브라우저에서 사용 가능
- GPU 사용 가능
- Github 및 Google Drive 연동 가능
- 장점 : 설치 불필요(Google 계정만 있으면 어디서든 실행 가능), 높은 접근성, 머신러닝/딥러닝 활용 가능(GPU 환경 제공)
- 제한 사항 : 무료 버전에서는 장시간 작업 제한(크롤링 10시간 초과), 고성능 딥러닝 작업 제한(단 연구 및 수업 목적에는 충분한 성능 제공)
Phthon 기반의 그래프/네트워크 분석 라이브러리인 NetworkX 기본 개념
- 활용 분야 : 사회연결망분석, 그래프 알고리즘, 중심성 분석, 커뮤니티 분석, 시각화
① NetworkX로 할 수 있는 기본 작업 - 그래프 객체 생성 : 네트워크 구조 생성
예)
import networkx as nx
G = nx.Graph()
② 노드(Node) 추가
G.add_node("A")
G.add_edge("A", "B")
예) Adjacency Matrix, Edge List
그래프 데이터 표현 방식
1) Adjacency Matrix(인접행렬) - 노드 간 연결 여부를 행렬로 표현
- 특징 : 수학적 처리 용이, 행렬 연산 가능, GNN/GCN에서 핵심 입력 데이터

2) Edge List - 연결 정보를 리스트 형태로 저장

예)
A B
A C
B D
- 특징 : 직관적, 저장 효율이 좋음
Networkx 내부 구조 - 딕셔너리(dictionary) 구조 사용
노드 정보, 이웃 정보, 타입 정보등이 함께 저장
G = {
"Node": "Information"
}
주요 속성
모든 노드(Node) 조회
G.nodes
G.edges
| 주제 | 핵심내용 |
| Python 활용 이유 | 최신 데이터 분석 및 딥러닝 중심 언어 |
| .py 방식 | 협업/프로그램 개발 적합 |
| Jupyter Notebook | 실험/연구에 적합 |
| Google Colab | 클라우드 기반 Python 실습 환경 |
| NetworkX | Python 네트워크 분석 핵심 라이브러리 |
| Adjacency Matrix | 연결 관계를 행렬로 표현 |
| Edge List | 연결 관계를 리스트로 표현 |
'[Industry Knowledge Sharing] > Graduate' 카테고리의 다른 글
| 카이제곱부터 F검정까지 (0) | 2026.05.19 |
|---|---|
| 분산분석(ANOVA, ANalysis Of VAriance) (0) | 2026.05.18 |
| Graph Neural Networks(GNN) / Graph Convolutional Networks(GCN) (0) | 2026.05.17 |
| 10. 상관분석에서 다중회귀분석까지 관계의 발견과 인과관계 (3) | 2026.05.05 |
| Social Network Analysis (0) | 2026.05.02 |