自助法划分数据集代码
时间: 2023-07-09 21:21:13 浏览: 117
数据集的划分代码.......................................
5星 · 资源好评率100%
好的,以下是一个示例的自助法划分数据集的 Python 代码:
```python
import random
def bootstrap_split(dataset, split_ratio):
train_set = []
test_set = []
n_train = int(len(dataset) * split_ratio)
for i in range(n_train):
index = random.randrange(len(dataset))
train_set.append(dataset[index])
for j in range(len(dataset)):
if j not in range(n_train):
test_set.append(dataset[j])
return train_set, test_set
```
其中,`dataset` 是原始的数据集,`split_ratio` 是训练集所占比例。函数中,首先根据比例计算出训练集的样本数,然后使用 `random.randrange()` 函数随机选取样本加入到训练集中,直到训练集的样本数达到要求。最后,将剩余的样本加入到测试集中,并返回训练集和测试集。
使用示例:
```python
dataset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
split_ratio = 0.7
train_set, test_set = bootstrap_split(dataset, split_ratio)
print(train_set)
print(test_set)
```
输出:
```
[3, 6, 5, 4, 1, 5, 4, 4, 8]
[2, 7, 10, 9]
```
注意,由于自助法是有放回地随机选取样本,所以同一个样本可能会被选取多次,也可能不被选取。因此,训练集和测试集之间可能有重叠的样本。
阅读全文