Source code for fusionlab.datasets.a12lead

import pandas as pd
from torch.utils.data import Dataset  # 導入PyTorch的資料處理工具
from fusionlab.datasets import csvread  # 讀取ECG signal


# 做一個簡單的Dataset class
[docs] class ECGClassificationDataset(Dataset): def __init__(self, annotation_file, # 標註檔案路徑 data_dir, # ECG資料路徑 transform=None, channels=None, class_names=None): # 資料轉換函式 self.signal_paths = data_dir self.ecg_signals = pd.read_csv(annotation_file) # 讀取標註檔案 self.transform = transform self.channels = channels self.class_map = {n: i for i, n in enumerate(class_names)} def __len__(self): return len(self.ecg_signals) # 回傳資料筆數 def __getitem__(self, idx): entry = self.ecg_signals.iloc[idx] # 取得指定索引的資料 data = csvread.read_csv(self.signal_paths+entry['filename']) # 讀取ECG資料 label = entry['label'] # 取得標籤 if self.transform: data = self.transform(data) # 資料轉換 return data, label # 回傳資料和標籤