03 2022 档案
摘要:一、需求 例如有一个数据框列名分别为:a、b、c、d,要求转换为:d、c、b、a。 二、实操 建立测试数据集 # 建立测试数据集 df = pd.DataFrame({'a':range(5), 'b':np.random.randn(5), 'c':np.random.randn(5), 'd':
阅读全文
摘要:一、丑数 丑数(ugly number): 把只包含质因子2、3和5的数称作丑数,例如:6、8都是丑数,但7、14不是。 习惯上把1当做第一个丑数。 二、判断方法 根据丑数的定义,0和负整数一定不是丑数。 当n大于0时,如果n是丑数,那么n可以写成以下形式: n = 2^a * 3^b * 5^c
阅读全文
摘要:1.只运行1次? # 只运行一次? for i in range(4): print(i) i = 10 # 答案:运行4次,输出0123 # 原理:Python循环方式,迭代器range(4)提前被解包并赋值目标列表 2.Hash # Hash some_dict = {} some_dict[5
阅读全文
摘要:一、题目 给定一个包含 [0, n] 中 n 个数的数组 nums,找出 [0, n] 这个范围内没有出现在数组中的那个数。 二、思路 1.方法一:排序 将数组排序之后,即可根据数组中每个下标处的元素是否和下标相等,得到丢失的数字。 2.方法二:哈希集合 使用哈希集合,可以将时间复杂度降低到 O(n
阅读全文
摘要:一、使用datetime.quarter判断 # Python月份判断季度 import datetime import pandas as pd df['quarter'] = df['date'].dt.quarter 二、字典手动判断 data = pd.DataFrame({'month':
阅读全文
摘要:通过以下脚本,可以将程序运行时间记录,并转换为时分秒的友好格式展示。 import time from time import strftime, gmtime # 获取开始时间 start_time = time.time() ## -- 执行脚本 -- time.sleep(5) # 获取结束时
阅读全文
摘要:一、介绍 scikit-learn 包含各种随机样本的生成器,可以用来建立可控制大小和复杂性的人工数据集。 make_blob() —— 聚类生成器 make_classification() —— 单标签分类生成器 make_multilabel_classification() —— 多标签生成
阅读全文
摘要:一、业务背景 日常工作、比赛的分类问题中常遇到类别型的因变量存在严重的偏倚,即类别之间的比例严重失调。 样本量差距过大会导致建模效果偏差。 例如逻辑回归不适合处理类别不平衡问题,会倾向于将样本判定为大多数类别,虽然能达到很高的准确率,但是很低的召回率。 出现样本不均衡场景主要有: 异常检测:恶意刷单
阅读全文
摘要:一、挑战 你的面前有三个大门(A/B/C),其中有一个门背后有5000万的大奖,猜对了就归你!在你做出选择之后(假设选择A),会从剩下的两个门中打开一个没有大奖的门(例如:B),然后问你是否改变最初的选择? —— “坚持你的选择!坚持你的选择!” —— 不会就蒙C! —— 《恐怖游轮》不断重复循环
阅读全文
摘要:最近在打 2022 DCIC 比赛 —— 能源大数据子赛道:虚拟货币挖矿行为识别。 遂对模型融合学习一番。 以此记录。 一、原理 略 二、实操 1.准备数据 ## 数据准备 from sklearn.datasets import make_classification from sklearn.m
阅读全文
摘要:一、交叉验证 机器学习中常用交叉验证函数:KFold 和 StratifiedKFold。 方法导入: from sklearn.model_selection import KFold, StratifiedKFold StratifiedKFold:采用分层划分的方法(分层随机抽样思想),验证集
阅读全文