Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
List of random numbers
#11
Just because it's Friday:

>>> import random
>>> from collections import Counter
>>> result = dict(Counter(random.choices(range(101), k=1000)).most_common())
I'm not 'in'-sane. Indeed, I am so far 'out' of sane that you appear a tiny blip on the distant coast of sanity. Bucky Katt, Get Fuzzy

Da Bishop: There's a dead bishop on the landing. I don't know who keeps bringing them in here. ....but society is to blame.
Reply
#12
(Dec-02-2022, 04:00 PM)astral_travel Wrote: suppose i want to order the output so the order of the numbers will be by their prevalence...and not by the numeric order as it is at the moment...
Don't call dict on the Counter,use the most_common method of Counter.
>>> count = Counter(a)
# All
>>> count.most_common()
....

# 5 most common 
>>> count.most_common(5)
[(58, 17), (11, 16), (99, 16), (13, 15), (63, 15)]

>>> count.most_common(1)
[(58, 17)]
So 58 was the most common number in this run bye the count of 17.

Edit:
posted at same tiime as previous poster.
Reply
#13
yea..you all wrote at the same time !

thanks to the three of you !

it's amazing how things can be simplified
Reply
#14
(Dec-02-2022, 04:00 PM)astral_travel Wrote: now, suppose i want to order the output so the order of the numbers will be by their prevalence

I've not looked at this in any detail, and I've never used Counter, but if you now have a dictionary and each key value pair holds the number and the occurrence, then I would have thought that you could extract the data and the key, then list them high to low, or low to high, by the occurrence value.

It's maybe more coding than you need, if such a function is already a part of a library, but in the interest of learning, it could prove to be a useful exercise.
Sig:
>>> import this

The UNIX philosophy: "Do one thing, and do it well."

"The danger of computers becoming like humans is not as great as the danger of humans becoming like computers." :~ Konrad Zuse

"Everything should be made as simple as possible, but not simpler." :~ Albert Einstein
Reply
#15
Guess you didn't read the part about Counter.most_common() that does exactly what you are looking for.
Reply
#16
(Dec-02-2022, 06:31 PM)rob101 Wrote:
(Dec-02-2022, 04:00 PM)astral_travel Wrote: now, suppose i want to order the output so the order of the numbers will be by their prevalence

I've not looked at this in any detail, and I've never used Counter, but if you now have a dictionary and each key value pair holds the number and the occurrence, then I would have thought that you could extract the data and the key, then list them high to low, or low to high, by the occurrence value.

It's maybe more coding than you need, if such a function is already a part of a library, but in the interest of learning, it could prove to be a useful exercise.

yea i just might try that...
Reply
#17
(Dec-02-2022, 07:04 PM)deanhystad Wrote: Guess you didn't read the part about Counter.most_common() that does exactly what you are looking for.

OMG i thought what follows beneath are totally other functions...no wonder there was written so little...hehe

just got that these are sub classes of the same function....you're right at that, my fault....

at least i'll be wiser for the next time

hehe
Reply
#18
(Dec-02-2022, 07:28 PM)astral_travel Wrote:
(Dec-02-2022, 07:04 PM)deanhystad Wrote: Guess you didn't read the part about Counter.most_common() that does exactly what you are looking for.

OMG i thought what follows beneath are totally other functions...no wonder there was written so little...hehe

just got that these are sub classes of the same function....you're right at that, my fault....

at least i'll be wiser for the next time

hehe
They are methods of the Counter class. Functions do not have sub classes.
ndc85430 and astral_travel like this post
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  How do I calculate a ratio from 2 numbers and return an equivalent list of about 1000 Pleiades 8 15,720 Jan-05-2024, 08:30 PM
Last Post: sgrey
  random numbers, randint janeik 2 574 Nov-27-2023, 05:17 PM
Last Post: janeik
  Sample random, unique string pairs from a list without repetitions walterwhite 1 464 Nov-19-2023, 10:07 PM
Last Post: deanhystad
  find random numbers that are = to the first 2 number of a list. Frankduc 23 3,255 Apr-05-2023, 07:36 PM
Last Post: Frankduc
  Remove numbers from a list menator01 4 1,346 Nov-13-2022, 01:27 AM
Last Post: menator01
  [split] why can't i create a list of numbers (ints) with random.randrange() astral_travel 7 1,529 Oct-23-2022, 11:13 PM
Last Post: Pedroski55
  Divide a number by numbers in a list. Wallen 7 8,059 Feb-12-2022, 01:51 PM
Last Post: deanhystad
  producing numbers out of a list bouraque7878 10 3,782 Nov-12-2021, 09:13 PM
Last Post: jefsummers
  How to change odd to even numbers in the list? plumberpy 8 3,764 Aug-08-2021, 11:07 AM
Last Post: plumberpy
  convert numbers into list lokesh 1 2,389 Jun-03-2021, 06:37 AM
Last Post: menator01

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020