【机器学习实战】Baseline精读笔记

比赛用到的库

  1. numpy:提供(多维)数组操作

  2. pandas:提供数据结构、数据分析

  3. catboost:用于机器学习的库,特别是分类和回归任务

  4. sklearn.model_selection:包含模型选择的多种方法,如交叉验证

  5. sklearn.metrics:包含评估模型性能的多种指标,提供如accuracy_score这样的方法

  6. sklearn.feature_extraction.text:提供将文本转换为特征向量的TF-idf向量化器

  7. rdkit:化学信息学和机器学习软件,处理化学结构

  8. tqdm:用于在长循环中添加进度条的库

  9. sys:与Python解释器密切相关的模块和由解释器使用或维护的变量和函数

  10. os:提供与操作系统交互的功能

  11. gc:垃圾收集器接口:用于手动标记对象为可删除

  12. re:正则表达式库,用于字符串搜索和替换

  13. argparse:用于编写用户友好的命令行接口

  14. warnings:用于发出警告,或忽略警告。

使用到的关键的库文档链接:

numpy:NumPy 参考 — NumPy v2.0 手册

pandas:API reference — pandas 2.2.2 documentation (pydata.org)

catboost:CatBoost | CatBoost

sklearn:API Reference — scikit-learn 1.5.1 documentation

rdkit:RDKit中文教程 — RDKit 中文教程 2020.09 文档 (chenzhaoqiang.com)

sys:sys — System-specific parameters and functions — Python 3.12.4 documentation

库的导入

import numpy as np
import pandas as pd
from catboost import CatBoostClassifier
from sklearn.model_selection import StratifiedKFold, KFold, GroupKFold
from sklearn.metrics import f1_score
from rdkit import Chem
from rdkit.Chem import Descriptors
from sklearn.feature_extraction.text import TfidfVectorizer
import tqdm, sys, os, gc, re, argparse, warnings
warnings.filterwarnings('ignore') # 忽略警告

数据预处理

train = pd.read_excel('./dataset-new/traindata-new.xlsx')
test = pd.read_excel('./dataset-new/testdata-new.xlsx')

# test数据不包含 DC50 (nM) 和 Dmax (%)
train = train.drop(['DC50 (nM)', 'Dmax (%)'], axis=1)

# 定义了一个空列表drop_cols,用于存储在测试数据集中非空值小于10个的列名。
drop_cols = []
for f in test.columns:
    if test[f].notnull().sum() < 10:
        drop_cols.append(f)

# 使用drop方法从训练集和测试集中删除了这些列,以避免在后续的分析或建模中使用这些包含大量缺失值的列
train = train.drop(drop_cols, axis=1)
test = test.drop(drop_cols, axis=1)

# 使用pd.concat将清洗后的训练集和测试集合并成一个名为data的DataFrame,便于进行统一的特征工程处理
data = pd.concat([train, test], axis=0, ignore_index=True)
cols = data.columns[2:</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

城主_全栈开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值