python - 训练测试拆分的类型
问题描述
谁能解释一下这两种不同类型的火车测试拆分。我知道第一个。我在某人的代码上看到的第二个。
train_text, temp_text, train_labels, temp_labels = train_test_split(df['text'], df['spam'],
random_state=42,
test_size=0.3,
stratify=df['spam'])
df_train, df_valid = model_selection.train_test_split(
text, test_size=0.1,
random_state=42, stratify=data.spam.values)
在第二个例子中,为什么这个人只取 2 个变量而不是 4 个
解决方案
为什么这个人只取 2 个变量而不是 4 个
原因是train_test_split
接受两种类型的参数 -*arrays
和**options
- 和:
在第一个例子中
*arrays
是df['text'], df['spam']
。其余的论点 (the**options
) 与问题无关。因此,该函数接收两个数组 -df['text']
并且df['spam']
它为两个数组中的每一个生成训练和测试拆分,因此它有 4 个结果。在第二个示例中,仅提供了一个数组 -
text
因此该函数仅返回两个结果 - 的训练和测试拆分text
。
该函数的文档指出它返回:
split: list, length=2 * len(arrays) 包含输入的训练测试拆分的列表。
推荐阅读
- python - 如何为线性回归重塑数据
- python-3.x - Python:在 Google Colab 中使用 Selenium 自动将数据输入到 Google Drive
- java - Apache NIFI 自定义处理器给出错误“找不到合适的驱动程序”
- python - 从python的fasta文件之间找到主题
- hybris - 当我在 Hybris 中本地化枚举类型时,如何解决 java.lang.IllegalStateException?
- python - 解码ASCII时,是否应该故意省略奇偶校验位?
- class - UML 类图中信号的正确设计是什么?
- xcode - UICollectionView 的单元格中的按钮不起作用
- python - tkinter 文本插入 wordstart 的问题
- php - 创建自定义用户电子邮件