Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 519871
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T08:05:10+00:00 2026-05-13T08:05:10+00:00

I want to rank multiple lists according to their elements how often they appear

  • 0

I want to rank multiple lists according to their elements how often they appear in each list. Example:

list1 = 1,2,3,4
list2 = 4,5,6,7
list3 = 4,1,8,9

result = 4,1,2,3,4,5,6,7,8 (4 is counted three times, 1 two times and the rest once)

I’ve tried the following but i need something more intelligent and something i can do with any ammount of lists.


 l = []
 l.append([ 1, 2, 3, 4, 5])
 l.append([ 1, 9, 3, 4, 5])
 l.append([ 1, 10, 8, 4, 5])
 l.append([ 1, 12, 13, 7, 5])
 l.append([ 1, 14, 13, 13, 6])

 x1 = set(l[0]) & set(l[1]) & set(l[2]) & set(l[3])
 x2 = set(l[0]) & set(l[1]) & set(l[2]) & set(l[4])
 x3 = set(l[0]) & set(l[1]) & set(l[3]) & set(l[4])
 x4 = set(l[0]) & set(l[2]) & set(l[3]) & set(l[4])
 x5 = set(l[1]) & set(l[2]) & set(l[3]) & set(l[4])
 set1 = set(x1) | set(x2) | set(x3) | set(x4) | set(x5)

 a1 = list(set(l[0]) & set(l[1]) & set(l[2]) & set(l[3]) & set(l[4]))
 a2 = getDifference(list(set1),a1)
 print a1
 print a2

Now here is the problem… i can do it again and again with a3,a4 and a5 but its too complex then, i need a function for this… But i don’t know how… my math got stuck 😉

SOLVED: thanks alot for the discussion. As a newbee i like this system somehow: fast+informative. You helped me all out! Ty

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T08:05:10+00:00Added an answer on May 13, 2026 at 8:05 am
    import collections
    
    data = [
      [1, 2, 3, 4, 5],
      [1, 9, 3, 4, 5],
      [1, 10, 8, 4, 5],
      [1, 12, 13, 7, 5],
      [1, 14, 13, 13, 6],
    ]
    
    def sorted_by_count(lists):
      counts = collections.defaultdict(int)
      for L in lists:
        for n in L:
          counts[n] += 1
    
      return [num for num, count in
              sorted(counts.items(),
                     key=lambda k_v: (k_v[1], k_v[0]),
                     reverse=True)]
    
    print sorted_by_count(data)
    

    Now let’s generalize it (to take any iterable, loosen hashable requirement), allow key and reverse parameters (to match sorted), and rename to freq_sorted:

    def freq_sorted(iterable, key=None, reverse=False, include_freq=False):
      """Return a list of items from iterable sorted by frequency.
    
      If include_freq, (item, freq) is returned instead of item.
    
      key(item) must be hashable, but items need not be.
    
      *Higher* frequencies are returned first.  Within the same frequency group,
      items are ordered according to key(item).
      """
      if key is None:
        key = lambda x: x
    
      key_counts = collections.defaultdict(int)
      items = {}
      for n in iterable:
        k = key(n)
        key_counts[k] += 1
        items.setdefault(k, n)
    
      if include_freq:
        def get_item(k, c):
          return items[k], c
      else:
        def get_item(k, c):
          return items[k]
    
      return [get_item(k, c) for k, c in
              sorted(key_counts.items(),
                     key=lambda kc: (-kc[1], kc[0]),
                     reverse=reverse)]
    

    Example:

    >>> import itertools
    >>> print freq_sorted(itertools.chain.from_iterable(data))
    [1, 5, 4, 13, 3, 2, 6, 7, 8, 9, 10, 12, 14]
    >>> print freq_sorted(itertools.chain.from_iterable(data), include_freq=True)
    # (slightly reformatted)
    [(1, 5),
     (5, 4),
     (4, 3), (13, 3),
     (3, 2),
     (2, 1), (6, 1), (7, 1), (8, 1), (9, 1), (10, 1), (12, 1), (14, 1)]
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a order list and I want to generate and rank the product
I want to rank my pages by the ammount of Facebook likes they have
This is raw data, and want to rank them according to score (count(tbl_1.id)). [tbl_1]
For example I have this query which orders val2 according to their item with
I want to compute rank of element in an IEnumerable list and assign it
I want to get the page rank for any website. I have tried many
Want to run javascript function from parent window in child window Example I have
I am having issues with a query, I want it to rank the result
I want to show table like : | | qty | S rank |
Is there a way to get the search rank of freebase topics? We want

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.