每次我重新启动jupyter-lab
笔记本时,value_count()
都会显示不同的值。
bid = customers['BasketID']
bid.value_counts()
这是两次处决的结果:
576339 542
573585 535
579196 533
580727 529
578270 442
...
563453 1
C567706 1
548001 1
C546895 1
574519 1
Name: BasketID, Length: 24627, dtype: int64
576339 542
573585 535
579196 533
580727 529
578270 442
...
C562808 1
575205 1
549004 1
C542991 1
565577 1
Name: BasketID, Length: 24627, dtype: int64
如您所见,总是存在以字母开头的不同数字。
由于在笔记本中我必须引用这些数字之一,所以每次迭代都不能更改它。
有没有办法使方法的输出具有确定性?
我猜这种奇怪的行为是由于该方法使用的排序算法造成的。也许有一种方法可以查看/设置算法所使用的随机数生成器的种子?
答案 0 :(得分:2)
if (age.length() < 5 || age.length() > 60) {
return false;
}
默认具有value_counts
,它很可能使用快速排序进行排序。您可以尝试使用sort=True
禁用它,它返回带有排序索引的系列:
sort=False
如果您仍然希望对序列进行排序,则可以使用bid.value_counts(sort=False)
进行手动排序,并使用稳定的sort_values
方法:
mergesort