首页 > 解决方案 > 删除函数和标签

问题描述

我正在编写代码来随机选择“彩票”绘图的人。每个人可以多次进入抽奖;但是,它们只能绘制一次。该程序将作为循环运行 X 次。它将选择一个人,将他们附加到变量“幸运赢家”中,然后将他们从数据框中删除,以便下次循环运行时无法选择他们。

import pandas as pd

dataframe = pd.read_csv(r'csv file', header=None, delimiter=',')
    
lucky_winners = []

i=0
while i < 10:
    lucky_winner = dataframe.sample(n=1)
    lucky_winners.append(lucky_winner)
    dataframe = dataframe.drop(lucky_winner[0].index) 
    i+=1

我有两个问题 1) 删除功能不起作用 2) 如果没有删除具有相同标签的所有行,则可能会选择两次获胜者。如何编写 drop 函数,使其基于标签而不是索引下降?

谢谢大家!

标签: pythonpandas

解决方案


结束了这个:

df= pd.read_csv(r'csv file', header=None, delimiter=',')
lucky_winner = df.sample(n=8,weights='weight')

推荐阅读