随机分类,保持均衡水平Python

1、目的:

10000个样本有4个指标,按照逾期金额分10类,确保每类别逾期金额均衡。

2、数据:

3、思路:

将10000个样本按照逾期金额排序,

等距分箱为2500个类别

增加一列随机数

根据类别和随机数升序排列

增加一列赋值

按照分类的逾期金额求随机数

以下为10000个样本有4个指标,按照逾期金额分10类的代码逻辑。

4、代码实现

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

from pandas import Series,DataFrame as df

import random

#1)获取数据

file_data= pd.read_csv("D:\data\paixu.csv")

file_data.shape

file_data.head()

#1)逾期金额升序排序

file_data1=file_data.sort_values(by=['yqje'],ascending=[True])

#2)等距分箱形成aa列

file_data1['aa']=pd.cut(file_data1.yqje,2500,labels=range(0,2500))

#3)赋值一列bb为随机数

random_nums=np.random.randint(0,10000,size=10000)

file_data1['bb']=random_nums

#4)根据aa 和bb列排序

file_data1=file_data1.sort_values(by=['aa','bb'],ascending=[True,False])

#5)按照排序规则赋值1 2 3 4

values=[1,2,3,4,5,6,7,8,9,10]

new_col = [values[i % len(values)] for i in range(len(file_data1))]

file_data1['cc']=new_col

#6)结论、

group_mean=file_data1.groupby('cc')['yqje'].mean()

相关推荐
逢生博客17 分钟前
使用 Python 项目管理工具 uv 快速创建 MCP 服务(Cherry Studio、Trae 添加 MCP 服务)
python·sqlite·uv·deepseek·trae·cherry studio·mcp服务
堕落似梦23 分钟前
Pydantic增强SQLALchemy序列化(FastAPI直接输出SQLALchemy查询集)
python
坐吃山猪1 小时前
Python-Agent调用多个Server-FastAPI版本
开发语言·python·fastapi
Bruce-li__2 小时前
使用Django REST Framework快速开发API接口
python·django·sqlite
小兜全糖(xdqt)2 小时前
python 脚本引用django中的数据库model
python·django
Arenaschi2 小时前
SQLite 是什么?
开发语言·网络·python·网络协议·tcp/ip
纪元A梦2 小时前
华为OD机试真题——推荐多样性(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
java·javascript·c++·python·华为od·go·华为od机试题
仙人掌_lz2 小时前
人工智能与机器学习:Python从零实现性回归模型
人工智能·python·机器学习·线性回归
量子-Alex2 小时前
【遥感图像分类】【综述】遥感影像分类:全面综述与应用
人工智能·分类·数据挖掘
Awesome Baron2 小时前
《Learning Langchain》阅读笔记8-RAG(4)在vector store中存储embbdings
python·jupyter·chatgpt·langchain·llm