Chức năng chạy python cho mọi mục trong danh sách

Có nhiều cách để áp dụng hàm cho từng phần tử của Mảng NumPy. Hãy thảo luận từng phương pháp một với cách tiếp cận phù hợp và một ví dụ về mã hoạt động

quảng cáo

Áp dụng hàm trên Mảng NumPy bằng hàm được vector hóa

Mô-đun numpy có một lớp vectorize. Nó lấy một hàm python làm đối số và trả về một hàm được vector hóa. Hàm được vector hóa này lấy một mảng NumPy làm đối số và gọi hàm được gán trước đó cho từng phần tử của mảng. Sau đó trả về một mảng NumPy chứa kết quả

Cú pháp véc tơ hóa

numpy.vectorize[pyfunc]
  • Thông số
  • pyfunc = Hàm hoặc phương thức Python
  • trả lại
  • Trả về một hàm vector hóa

Trước tiên, hãy tạo một hàm mà bạn muốn áp dụng trên mảng, sau đó làm theo cách tiếp cận sau

Tiếp cận

  1. Nhập thư viện numpy và tạo mảng numpy
  2. Tạo một hàm mà bạn muốn áp dụng trên từng phần tử của NumPy Array. Ví dụ hàm có tên add[]
  3. Truyền hàm add[] này cho lớp vectorize. Nó trả về một hàm vector hóa
  4. Truyền mảng NumPy cho hàm vector hóa
  5. Hàm được vector hóa sẽ áp dụng hàm được gán trước đó [ add[] ] cho từng phần tử của mảng và trả về một Mảng NumPy chứa kết quả
  6. In mảng

Mã nguồn

import numpy as np

# A function to be applied to the array
def add[num]:
    return num + 10

# creating  numpy array
arr = np.array[[1, 2, 3, 4, 5]]

# printing the original array
print[" The original array : " , arr]

# Apply add[] function to array. 
addTen = np.vectorize[add]
arr = addTen[arr]

# printing the array after applying function
print[" The array after applying function : " , arr]

đầu ra

 The original array :  [1 2 3 4 5]
 The array after applying function :  [11 12 13 14 15]

Áp dụng hàm trên Mảng NumPy bằng hàm map[]

Hàm map[] của python nhận chức năng và có thể lặp lại làm tham số. Sau đó, nó áp dụng hàm đã cho trên tất cả các phần tử của iterable đã cho và trả về một đối tượng được ánh xạ. Chúng tôi có thể lặp lại đối tượng được ánh xạ này để nhận tất cả các giá trị kết quả hoặc chúng tôi có thể trực tiếp chuyển đổi nó thành một danh sách

Cú pháp hàm map[]

map[function, iterator]
  • Thông số
  • function = Hàm hoặc phương thức Python
  • iterator = Danh sách, bộ, tuple
  • trả lại
  • Trả về một iterator

Trước tiên, hãy tạo một hàm mà bạn muốn áp dụng trên mảng và làm theo cách tiếp cận sau,

Tiếp cận

  1. Nhập thư viện numpy và tạo mảng numpy
  2. Tạo một hàm để thêm một số vào tham số chức năng
  3. Truyền hàm này và mảng cho hàm map[]. Nó sẽ trả về một đối tượng được ánh xạ bằng cách áp dụng hàm cho từng phần tử của trình vòng lặp
  4. Chuyển đổi đối tượng được ánh xạ thành danh sách
  5. Chuyển đổi nó thành một mảng và in nó

Mã nguồn

import numpy as np

# function to be applied to the array
def add[num]:
    return num+10
# creating  numpy array
arr = np.array[[1, 2, 3, 4, 5]]

# printing the original array
print[" The original array : " , arr]

# Apply add[] function to array. 
arr = np.array[list[map[add, arr]]]

# printing the array after applying function
print[" The array after applying function : " , arr]

đầu ra

 The original array :  [1 2 3 4 5]
 The array after applying function :  [11 12 13 14 15]

Áp dụng một hàm trên Mảng NumPy bằng Sử dụng cho vòng lặp

Chúng ta có thể lặp lại một mảng NumPy và áp dụng hàm đã cho trên từng phần tử một

Tiếp cận

  1. Nhập thư viện numpy và tạo mảng numpy
  2. Sử dụng vòng lặp for và phương thức range[] lặp lại trên mảng
  3. Áp dụng hàm đã cho cho từng phần tử của mảng
  4. In mảng

Mã nguồn

import numpy as np

# function to be applied to the array
def add[num]:
    return num+10

# creating  numpy array
arr = np.array[[1, 2, 3, 4, 5]]

# printing the original array
print[" The original array : " , arr]

# Apply add[] function to array. 
for i in range[0,len[arr]]:
    arr[i] = add[arr[i]]

# printing the array after applying function
print[" The array after applying function : " , arr]

đầu ra

 The original array :  [1 2 3 4 5]
 The array after applying function :  [11 12 13 14 15]

Áp dụng một chức năng trên Mảng NumPy bằng cách sử dụng Danh sách hiểu

Khả năng hiểu Danh sách được sử dụng để tạo danh sách mới từ các lần lặp như bộ dữ liệu, chuỗi, mảng, danh sách, Chúng cung cấp cú pháp rất nhỏ. Bây giờ để áp dụng một chức năng trên toàn bộ mảng. Sử dụng Khả năng hiểu danh sách để lặp lại mảng và áp dụng hàm đã cho cho từng phần tử của mảng có nhiều mảng

Tiếp cận

  1. Nhập thư viện numpy và tạo mảng numpy
  2. Sử dụng List Comprehension để lặp lại mảng
  3. Áp dụng hàm đã cho cho từng phần tử của mảng và nhận tất cả các kết quả trong một danh sách
  4. Chuyển đổi nó thành NumPy Array và in nó

Mã nguồn

________số 8_______

đầu ra

numpy.vectorize[pyfunc]
0

Tóm lược

Tuyệt vời. bạn đã tạo ra nó, Chúng tôi đã thảo luận về Tất cả các phương thức có thể áp dụng một phương thức trên tất cả các phần tử của Mảng NumPy trong Python. học tập vui vẻ

Hàm all[] trong Python là gì?

Hàm Python all[] . Nếu đối tượng iterable trống, hàm all[] cũng trả về True. returns True if all items in an iterable are true, otherwise it returns False. If the iterable object is empty, the all[] function also returns True.

Bạn có thể đặt một hàm trong danh sách Python không?

Trong Python, bạn có thể sử dụng hàm danh sách để tạo một tập hợp có thể thao tác cho phân tích của bạn. Bộ sưu tập dữ liệu này được gọi là một đối tượng danh sách.

Chủ Đề