j'ai dataframe qui ressemble à ceci:Picking éléments aléatoires de l'aide GroupBy pandas géants
revisionId itemId wikidataType
1 307190482 23 Q5
6 305019084 80 Q5
8 303692414 181 Q5
9 306600439 192 Q5
11 294597048 206 Q5
En dataframe complète, il y a 100 ces différentes valeurs présentes dans la colonne wikidataType. C'est un grand dataframe, donc je veux le limiter à 1000 enregistrements par wikidataType. Par conséquent, je suit chose:
df = df[df.groupby('wikidataType')['wikidataType'].cumcount() < 1000]
Cela donne e comme 1000 premiers enregistrements pour chaque wikidataType. Je veux choisir ces 1000 enregistrements au hasard. Alors j'ai essayé d'utiliser
df = df[random.sample(list(df.groupby('wikidataType')['wikidataType']), 1000)]
Mais donné une erreur:
TypeError: 'Series' objects are mutable, thus they cannot be hashed
J'ai même essayé
df = df[df.groupby('wikidataType')['wikidataType'].cumcount().random() < 1000]
Mais cela aussi ne fonctionne pas. Quelqu'un sait comment je peux faire ça?
Merci d'avance.
J'ai besoin de 1000 dossiers au hasard. Pas d'abord 1000. –
@NilakshiNaphade ouais, j'ajoutais ça dans. Voir edit. –
J'ai probablement besoin de cette dernière chose. Mais je veux comme min 1000 ou tout si la taille est inférieure à 1000. –