# -*- coding: utf-8 -*-
"""
Created on Wed Jul 4 17:14:41 2018
@author: Administrator
"""
'''随机采样'''
'''21点计数
H 红桃
S 黑桃
C 梅花
D 方片'''
import pandas as pd
import numpy as np
# 扑克得分矩阵
card_soccer = pd.DataFrame(np.reshape(([x for x in range(1,11)]+ [10]*3)*4,(4,13)),
index=[x for x in 'HSCD'],
columns=['A']+[x for x in range(2,11)]+[x for x in 'JQK'])
''' 随机抽选5张牌'''
five_in_all = card_soccer.unstack().take(np.random.permutation(52))[:5]
'''每种花色中随机抽选两张牌'''
# 随机抽取n个
def ran_loc(se ,n =5):
return se.take(np.random.permutation(len(se)))[:n]
# 根据level分组选取
n_in_group = card_soccer.unstack().groupby(level=1).apply(ran_loc,n=2)
# 去掉一个多余的index level
n_in_group.reset_index(level=2,drop=True,inplace=True)
# 分组时直接不分配group_keys
card_soccer.unstack().groupby(level=1,group_keys=False).apply(ran_loc,n=2)
分组随机采样 事例:随机抽取扑克牌
猜你喜欢
转载自blog.csdn.net/weixin_36420750/article/details/80923607
今日推荐
周排行