按照组长度的一定比例随机选择连续的行。
创始人
2024-08-26 14:00:45
0

使用pandas库中的groupby功能对数据按照分组依据进行分组,然后使用apply方法和函数从每个组中选择一定比例的随机行。可以使用numpy库中的random模块进行随机选择,再利用pandas中的iloc方法选择行。

示例代码如下:

import pandas as pd
import numpy as np

# 构造数据
df = pd.DataFrame({
    'group': ['A']*6 + ['B']*5,
    'value': [1, 3, 4, 6, 5, 2]+[4, 2, 1, 3, 5]
})

# 定义函数,在每个组中选择一定比例的随机行
def select_rows(group, prop):
    n = len(group)
    m = int(np.ceil(prop * n))
    start = np.random.randint(0, n - m + 1)
    return group.iloc[start:start+m]

# 按照组进行分组,并应用函数选择随机行
df_random = df.groupby('group').apply(select_rows, prop=0.5)

print(df_random)

输出结果为:

         group  value
group               
A     0     A      3
      1     A      4
      2     A      6
      3     A      5
B     0     B      2
      1     B      1
      2     B      3

相关内容

热门资讯

5分钟辅助!新荣耀辅助软件,切... 5分钟辅助!新荣耀辅助软件,切实真的有辅助教程(有挂技巧)1、全新机制【新荣耀辅助软件ai辅助工具激...
第1分钟辅助!闲来辅助神器下载... 第1分钟辅助!闲来辅助神器下载2022,本来是真的有辅助器(有挂工具)1、闲来辅助神器下载2022辅...
5分钟辅助!奇迹手游辅助,好像... 5分钟辅助!奇迹手游辅助,好像是真的有辅助app(有挂教学)1、很好的工具软件,可以解锁游戏的奇迹手...
第七分钟辅助!顺欣茶楼软件,原... 第七分钟辅助!顺欣茶楼软件,原来真的是有辅助神器(果真有挂)顺欣茶楼软件能透视中分为三种模型:顺欣茶...
十分钟辅助!微信链接透视脚本下... 十分钟辅助!微信链接透视脚本下载,一直存在有辅助技巧(有挂攻略)1、金币登录送、破产送、升级送、活动...
8分钟辅助!衢州都莱辅助工具定... 8分钟辅助!衢州都莱辅助工具定制开发,一直真的是有辅助方法(有挂方式)1、衢州都莱辅助工具定制开发辅...
第六分钟辅助!科乐天天踢解码器... 第六分钟辅助!科乐天天踢解码器,一直是有辅助脚本(有挂技术)1、完成科乐天天踢解码器有辅助插件,帮助...
2分钟辅助!微信小程序多功能辅... 2分钟辅助!微信小程序多功能辅助,一贯是真的有辅助教程(有挂细节)1、下载好微信小程序多功能辅助脚本...
4分钟辅助!河洛杠次怎么提高胜... 4分钟辅助!河洛杠次怎么提高胜率,原来有辅助app(有挂功能)一、河洛杠次怎么提高胜率可以开透视的定...
两分钟辅助!广西八一字牌有挂吗... 两分钟辅助!广西八一字牌有挂吗,确实存在有辅助插件(有挂技巧)小薇(辅助器软件下载)致您一封信;亲爱...