随机分类,保持均衡水平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()

相关推荐
猫头虎37 分钟前
如何查看局域网内IP冲突问题?如何查看局域网IP环绕问题?arp -a命令如何使用?
网络·python·网络协议·tcp/ip·开源·pandas·pip
沿着路走到底44 分钟前
python 基础
开发语言·python
烛阴2 小时前
武装你的Python“工具箱”:盘点10个你必须熟练掌握的核心方法
前端·python
杨枝甘露小码3 小时前
Python学习之基础篇
开发语言·python
我是华为OD~HR~栗栗呀3 小时前
23届考研-Java面经(华为OD)
java·c++·python·华为od·华为·面试
新兴ICT项目支撑4 小时前
BERT文本分类超参数优化实战:从13小时到83秒的性能飞跃
人工智能·分类·bert
小蕾Java4 小时前
PyCharm 软件使用各种问题 ,解决教程
ide·python·pycharm
Lucky_Turtle4 小时前
【PyCharm】设置注释风格,快速注释
python
kunge1v54 小时前
学习爬虫第四天:多任务爬虫
爬虫·python·学习·beautifulsoup
萧鼎4 小时前
Python schedule 库全解析:从任务调度到自动化执行的完整指南
网络·python·自动化