如何使用 PyTorch 将具有多个数据集的文件夹拆分为训练和测试
How to Split a folder with multiple dataset into train and test using PyTorch
我有一个包含 48 个 ECG 信号文件的文件夹。这些文件包括 .dat 和 .atr ECG 信号记录和注释。我想将它们拆分来训练和测试以训练 AI 模型。我将使用 PyTorch,我想知道在 Python.I 中执行此操作的简单方法更喜欢自定义拆分,其中包含一定数量的文件,其余文件在测试中。
例如:火车:['101', '104','107']
测试:['102', '105','106']
谢谢
这里首先需要使用
存储输入和属性位置
python 中的字典,输入文件名作为键,属性文件名作为值。
然后你可以拆分字典的键并将其用作输入。
from glob import glob
MainFolder="<Your Folder Name>"
Data={}
for file in glob(MainFolder+"/*.dat"):
At_file=file[:-3]+"atr"
Data[file]=At_file
# Here Data would have Input and attribute file name as key and value pair
# To split the date:
Key_data=list(Data)
import random
random.shuffle(Key_data)
#Here you specify the split ratio of Training and Testing
split=int(len(Key_data)*(0.8))
Train_in=Key_data[:split]
Test_in=Key_data[split:]
Train_at=[Data[i] for i in Train_in]
Test_at=[Data[i] for i in Test_in]
print(Train_in,Train_at,Test_in,Test_at)
这里Train_in是输入文件,Train_at是对应的属性文件
这应该可以解决您的问题。如果您在执行上述代码时遇到任何错误,请发表评论。
我有一个包含 48 个 ECG 信号文件的文件夹。这些文件包括 .dat 和 .atr ECG 信号记录和注释。我想将它们拆分来训练和测试以训练 AI 模型。我将使用 PyTorch,我想知道在 Python.I 中执行此操作的简单方法更喜欢自定义拆分,其中包含一定数量的文件,其余文件在测试中。
例如:火车:['101', '104','107'] 测试:['102', '105','106']
谢谢
这里首先需要使用
存储输入和属性位置
python 中的字典,输入文件名作为键,属性文件名作为值。
然后你可以拆分字典的键并将其用作输入。
from glob import glob
MainFolder="<Your Folder Name>"
Data={}
for file in glob(MainFolder+"/*.dat"):
At_file=file[:-3]+"atr"
Data[file]=At_file
# Here Data would have Input and attribute file name as key and value pair
# To split the date:
Key_data=list(Data)
import random
random.shuffle(Key_data)
#Here you specify the split ratio of Training and Testing
split=int(len(Key_data)*(0.8))
Train_in=Key_data[:split]
Test_in=Key_data[split:]
Train_at=[Data[i] for i in Train_in]
Test_at=[Data[i] for i in Test_in]
print(Train_in,Train_at,Test_in,Test_at)
这里Train_in是输入文件,Train_at是对应的属性文件
这应该可以解决您的问题。如果您在执行上述代码时遇到任何错误,请发表评论。