什么是最蟒蛇的方法



这真的只是一个好奇的问题。我的代码有效。我有大量实例,我试图将其分成不同的组(训练、验证和测试)。它们在一个列表中表示,但重要的是它们以 23 人为一组。这是我的实现:

train_end = int(len(instances)*TRAINING_END)
while train_end % CHANNELS != 0:
    train_end -= 1
valid_end = int(len(instances)*VALIDATION_END)
while valid_end % CHANNELS != 0:
    valid_end += 1

然后我使用 [:train_end], [train_end:valid_end], [valid_end:] 对列表进行分区。我觉得在python中采取这么多步骤的所有方法都有更简单的方法。有什么想法吗?

您可以通过执行以下操作跳过 while 循环:

train_end = (int(len(instances)*TRAINING_END) // CHANNELS) * CHANNELS

这样做的效果是确保int(len(instances)*TRAINING_END)可以被CHANNELS整除。

对于valid_end,等价效应为:

valid_end = (int(len(instances)*VALIDATION_END) // CHANNELS + 1) * CHANNELS

相关内容

  • 没有找到相关文章

最新更新