首先,我们需要使用Python读取两个点击标题数据集,并将它们合并为一个打乱顺序的数据集。

以下是读取数据并合并为一个数据集的代码:

import numpy as np
import pandas as pd

# 读取正面例子数据集
positive_data = pd.read_csv('https://raw.githubusercontent.com/pfrcks/clickbait-detection/master/clickbait')

# 添加标签列,将正面例子标记为1
positive_data['label'] = 1

# 读取负面例子数据集
negative_data = pd.read_csv('https://raw.githubusercontent.com/pfrcks/clickbait-detection/master/not-clickbait')

# 添加标签列,将负面例子标记为0
negative_data['label'] = 0

# 合并两个数据集
combined_data = pd.concat([positive_data, negative_data], ignore_index=True)

# 打乱数据集顺序
np.random.shuffle(combined_data.values)

# 显示合并和打乱顺序后的数据集
print(combined_data.head())

接下来,我们需要将数据集分为训练集、测试集和验证集。根据要求,我们将使用72%的数据作为训练集,8%的数据作为验证集,20%的数据作为测试集。我们可以使用数据集的行索引来划分数据集。

以下是将数据集划分为训练集、验证集和测试集的代码:

# 计算划分的索引位置
num_samples = len(combined_data)

train_split = int(0.72 * num_samples)
val_split = int(0.8 * num_samples)

# 创建索引列表
indices = list(range(num_samples))
np.random.shuffle(indices)

# 划分训练集、验证集和测试集的索引
train_indices = indices[:train_split]
val_indices = indices[train_split:val_split]
test_indices = indices[val_split:]

# 显示每个数据集的目标率
train_target_rate = combined_data.iloc[train_indices]['label'].mean()
val_target_rate = combined_data.iloc[val_indices]['label'].mean()
test_target_rate = combined_data.iloc[test_indices]['label'].mean()

print('训练集目标率:', train_target_rate)
print('验证集目标率:', val_target_rate)
print('测试集目标率:', test_target_rate)

运行上述代码后,将显示训练集、验证集和测试集的目标率。

点击诱导检测:数据集准备与划分

原文地址: https://www.cveoy.top/t/topic/bstF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录