AI 및 Data Analysis

Difference btw '.h5ad' and '.h5'

doraemin_dev 2025. 3. 28. 11:02

 .h5ad와 .h5는 비슷하지만 다른 포맷입니다. 둘 다 내부적으로는 HDF5 기반이지만, 목적과 구조가 다릅니다.


🔸 .h5ad (AnnData format)

  • 주로 단일세포 RNA 시퀀싱 데이터 분석을 위한 포맷이에요.
  • scanpy 또는 anndata 라이브러리에서 사용됩니다.
  • 내부에는 다음 정보가 구조화되어 저장됨:
    • X: 유전자 발현 행렬 (cells × genes)
    • obs: cell-wise metadata (예: 환자 ID, label, cell type 등)
    • var: gene-wise metadata
    • uns, obsm, varm 등 분석 결과 및 추가 정보

📦 확장자: .h5ad
📚 라이브러리: anndata, scanpy
✅ 용도: 단일세포 데이터 저장 및 분석


🔸 .h5 (일반 HDF5 format)

  • HDF5 포맷 자체는 범용적인 바이너리 데이터 포맷입니다.
  • 구조화된 데이터를 트리 형식으로 저장 가능해서 다양한 분야(물리, 기계학습, 이미지 등)에서 사용됨.
  • PyTorch, TensorFlow, h5py 등에서 지원

📦 확장자: .h5 또는 .hdf5
📚 라이브러리: h5py, PyTables, pytables, tensorflow 등
✅ 용도: 범용적인 데이터 저장


요약 : 같지는 않다.

항목 .h5ad .h5
기반 포맷 HDF5 HDF5
구조 AnnData 구조 전용 자유 구조
주요 라이브러리 scanpy, anndata h5py, pytables 등
용도 단일세포 데이터 범용 데이터 저장
호환성 .h5로 저장 가능하나 호환성 문제 있음 다양하게 사용 가능

필요하다면 .h5ad → .h5로 변환하거나, 반대로 .h5에서 AnnData 객체를 만들 수도 있어요.