Hướng dẫn get indices of top n values python - lấy chỉ số của n giá trị hàng đầu python

sorted(range(len(a)), key=lambda i: a[i])[-2:]

hoặc

sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]

hoặc

import operator

zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]

hoặc (đối với danh sách dài), hãy xem xét sử dụng heapq.nlargest

zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]

Hướng dẫn get indices of top n values python - lấy chỉ số của n giá trị hàng đầu python
Jain khắc nghiệt

Cải thiện bài viết

Lưu bài viếtargsort() function.

Đọc

Bàn luậnnumpy.argsort() function performs an indirect sort along the given axis.

Đôi khi, trong khi làm việc với danh sách Python, chúng ta có thể gặp vấn đề trong đó chúng ta muốn tìm n yếu tố lớn nhất. Nhiệm vụ này có thể xảy ra trong nhiều lĩnh vực như phát triển web và trong khi làm việc với cơ sở dữ liệu. Đôi khi chúng ta có thể yêu cầu chỉ tìm các chỉ số của chúng. Hãy để thảo luận về cách nhất định để tìm các chỉ số của các yếu tố lớn nhất trong danh sách.

Phương pháp: Sử dụng

import operator

zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
8 + Lambda + Danh sách SLIGIN Tác vụ Có thể được thực hiện bằng cách sử dụng kết hợp các chức năng trên. Trong đó,
import operator

zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
8, có thể được sử dụng để lấy container theo cách yêu cầu để có n phần tử lớn nhất ở phía sau và sau đó các chỉ số có thể được tính toán bằng cách sử dụng cắt danh sách.

numpy.argsort(Numpy_array, axis=None, kind=None, order=None)

Các

numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
7
numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
8
numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
9

# Importing the Numpy Package

import numpy as np

# Numpy Array

scores = np.array([100,67,92,87,66,89,76,22])

# Getting indices of N = 3 maximum values

x = np.argsort(scores)[::-1][:3]

print("Indices:",x)

# Getting N maximum values

print("Values:",scores[x])

0

# Importing the Numpy Package

import numpy as np

# Numpy Array

scores = np.array([100,67,92,87,66,89,76,22])

# Getting indices of N = 3 maximum values

x = np.argsort(scores)[::-1][:3]

print("Indices:",x)

# Getting N maximum values

print("Values:",scores[x])

1

# Importing the Numpy Package

import numpy as np

# Numpy Array

scores = np.array([100,67,92,87,66,89,76,22])

# Getting indices of N = 3 maximum values

x = np.argsort(scores)[::-1][:3]

print("Indices:",x)

# Getting N maximum values

print("Values:",scores[x])

2

  • # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    3
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    1
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    9

  • # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    6
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    1

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    8
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8
    The original list is : [5, 6, 10, 4, 7, 1, 19]
    Indices list of max N elements is : [1, 4, 2, 6]
    
    0
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8__

  • numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    7
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8heapq.nlargest1

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    0

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    1heapq.nlargest4

  • sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    6: Chỉ định các trường nào để so sánh đầu tiên.

Giá trị trả về

Hàm numpy.argsort() trả về một mảng các chỉ số theo trục được chỉ định.

Mã số

Hãy để một cái nhìn vào mã bây giờ.

# Importing the Numpy Package

import numpy as np

# Numpy Array

scores = np.array([100,67,92,87,66,89,76,22])

# Getting indices of N = 3 maximum values

x = np.argsort(scores)[::-1][:3]

print("Indices:",x)

# Getting N maximum values

print("Values:",scores[x])

Giải trình

  • Trong dòng 2, chúng tôi nhập thư viện

    sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    8 với bí danh
    sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    9.

  • Trong dòng 5, chúng tôi tạo một mảng

    sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    8 cần được sắp xếp.

  • Trong dòng 8, chúng tôi sắp xếp mảng

    sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    8 với hàm
    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    2. Hàm
    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    2 sắp xếp mảng
    sorted(range(len(a)), key=lambda i: a[i], reverse=True)[:2]
    
    8 theo thứ tự tăng dần và trả về các chỉ số của chúng.

    Vì tuyên bố vấn đề muốn chúng tôi tìm các chỉ số của N số tối đa, chúng tôi sử dụng

    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    5 để đảo ngược mảng. Cuối cùng, chúng tôi sử dụng
    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    6 để có được các giá trị N đầu tiên. Ở đây, n = 3 đã được thực hiện.

  • Trong dòng 9, chúng tôi in các chỉ số cần thiết.

  • Trong dòng 12, chúng tôi in các giá trị tối đa N để kiểm tra độ trễ của chương trình.

Theo cách này, chúng ta có thể nhận được các chỉ số của n giá trị tối đa từ một mảng numpy. Chúng ta cũng có thể nhận được các chỉ số của N giá trị tối thiểu bằng cách không đảo ngược mảng. Trong trường hợp đó, chúng tôi sẽ sử dụng

import operator

zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
5 trong dòng 8.

THẺ LIÊN QUAN

Numpy

Python

cộng đồng

Người đóng góp

Hướng dẫn get indices of top n values python - lấy chỉ số của n giá trị hàng đầu python
Jain khắc nghiệt

Cải thiện bài viết

Lưu bài viết

  • Đọc
  • Bàn luận
  • Cải thiện bài viết

    Lưu bài viết

    Đọc

    Bàn luận
    This task can be performed using the combination of above functions. In this the

    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    8, can be used to get the container in way which requires to get N largest elements at rear end and then the indices can be computed using list slicing.

    Đôi khi, trong khi làm việc với danh sách Python, chúng ta có thể gặp vấn đề trong đó chúng ta muốn tìm n yếu tố lớn nhất. Nhiệm vụ này có thể xảy ra trong nhiều lĩnh vực như phát triển web và trong khi làm việc với cơ sở dữ liệu. Đôi khi chúng ta có thể yêu cầu chỉ tìm các chỉ số của chúng. Hãy để thảo luận về cách nhất định để tìm các chỉ số của các yếu tố lớn nhất trong danh sách.

    Phương pháp: Sử dụng

    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    8 + Lambda + Danh sách SLIGIN Tác vụ Có thể được thực hiện bằng cách sử dụng kết hợp các chức năng trên. Trong đó,
    import operator
    
    zip(*sorted(enumerate(a), key=operator.itemgetter(1)))[0][-2:]
    
    8, có thể được sử dụng để lấy container theo cách yêu cầu để có n phần tử lớn nhất ở phía sau và sau đó các chỉ số có thể được tính toán bằng cách sử dụng cắt danh sách.

    Các

    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    7
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    9

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    0

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    1

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    2

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    3
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    1
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    9

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    6
    zip(*heapq.nlargest(2, enumerate(a), key=operator.itemgetter(1)))[0]
    
    1

    # Importing the Numpy Package

    import numpy as np

    # Numpy Array

    scores = np.array([100,67,92,87,66,89,76,22])

    # Getting indices of N = 3 maximum values

    x = np.argsort(scores)[::-1][:3]

    print("Indices:",x)

    # Getting N maximum values

    print("Values:",scores[x])

    8
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8
    The original list is : [5, 6, 10, 4, 7, 1, 19]
    Indices list of max N elements is : [1, 4, 2, 6]
    
    0
    numpy.argsort(Numpy_array, axis=None, kind=None, order=None)
    
    8__

    The original list is : [5, 6, 10, 4, 7, 1, 19]
    Indices list of max N elements is : [1, 4, 2, 6]
    

    Làm thế nào để bạn nhận được các chỉ số của n giá trị tối đa trong một mảng numpy?

    Để có được các chỉ số của n giá trị tối đa trong một mảng numpy, chúng ta có thể sử dụng hàm argsort ().use the argsort() function.

    Làm thế nào để bạn tìm thấy các chỉ số trong Python?

    Để tạo điều kiện cho điều này, Python có chức năng sẵn có gọi là index ().Hàm này lấy phần tử làm đối số và trả về chỉ mục.Bằng cách sử dụng chức năng này, chúng tôi có thể tìm thấy chỉ mục của một phần tử trong danh sách trong Python.index(). This function takes in the element as an argument and returns the index. By using this function we are able to find the index of an element in a list in Python.

    Làm thế nào để bạn tìm thấy chỉ số của một giá trị tối đa trong Python?

    Sử dụng hàm Enumerate () để tìm ra chỉ mục của giá trị tối đa trong danh sách.Sử dụng Numpy.hàm argmax () của thư viện Numpy để tìm ra chỉ mục của giá trị tối đa trong danh sách.. Use the numpy. argmax() function of the NumPy library to find out the index of the maximum value in a list.

    Làm thế nào để bạn tìm thấy chỉ số của nhiều yếu tố trong Python?

    Một trong những cách cơ bản nhất để có được vị trí chỉ mục của tất cả các lần xuất hiện của một phần tử trong danh sách Python là bằng cách sử dụng một vòng lặp và hàm liệt kê Python.Hàm liệt kê được sử dụng để lặp lại trên một đối tượng và trả về cả chỉ mục và phần tử.using a for loop and the Python enumerate function. The enumerate function is used to iterate over an object and returns both the index and element.