Tôi là một bậc thầy về Python

Trong bài toán này, chúng ta sẽ tìm tổng của tất cả các hàng và tất cả các cột một cách riêng biệt. Chúng ta sẽ sử dụng hàm sum[] để tính tổng

thuật toán

Step 1: Import numpy.
Step 2: Create a numpy matrix of mxn dimension.
Step 3: Obtain the sum of all the rows.
Step 4: Obtain the sum of all the columns.

Mã ví dụ

import numpy as np

a = np.matrix['10 20; 30 40']
print["Our matrix: \n", a]

sum_of_rows = np.sum[a, axis = 0]
print["\nSum of all the rows: ", sum_of_rows]

sum_of_cols = np.sum[a, axis = 1]
print["\nSum of all the columns: \n", sum_of_cols]

đầu ra

Our matrix:
 [[10 20]
 [30 40]]
Sum of all the rows:  [[40 60]]
Sum of all the columns:
 [[30]
 [70]]

Giải trình

các np. hàm sum[] nhận thêm một ma trận gọi là 'trục'. Axis nhận hai giá trị. 0 hoặc 1. Nếu axis=0, nó báo cho hàm sum[] chỉ xem xét các hàng. Nếu axis = 1, nó báo cho hàm sum[] chỉ xem xét các cột

Hàm NumPy sum[] trong python được sử dụng để trả về tổng/tổng ​​của tất cả các phần tử trên một mảng đã cho. Hàm này nhận một số đối số, trong đó sử dụng đối số


# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
0 để chỉ định loại dữ liệu được trả về và sử dụng đối số

# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
1 để chỉ định giá trị ban đầu cần xem xét cho tổng

Sử dụng chức năng này, bạn có thể làm như sau

  • Lấy tổng của tất cả các phần tử mảng của mảng đã cho,
  • Lấy tổng của mỗi hàng trên một trục được chỉ định và
  • Lấy tổng của mỗi cột của một mảng nhất định

Trong bài viết này, tôi sẽ giải thích cú pháp của hàm numpy sum[], các đối số khác nhau mà hàm này nhận và cách sử dụng hàm này bằng các ví dụ như cách tính các giá trị tổng của mảng đã cho. Để biết thêm ví dụ về NumPy, hãy tham khảo Hướng dẫn NumPy

1. Ví dụ nhanh về Hàm NumPy Sum

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách sử dụng hàm sum[] của NumPy


# Below are the quick examples

# Example 1: # Create a numpy array
# Get the sum of an array 
arr = np.array[[14, 17, 19, 22]]
sum = np.sum[arr]

# Example 2: Create 2-D numpy array
# Get the Sum of all the elements in an array            
arr = np.array[[[12, 14], [17, 19],[13, 16],[24, 27]]]
sum = np.sum[arr]

# Example 3: Get the sum of each column element along axis = 0
sum = np.sum[arr, axis=0]

# Example 4: Get the sum of each row element along axis = 1
sum = np.sum[arr, axis=1]

# Example 5: Get the sum of an array to specify data type 
sum = np.sum[arr, axis=1, dtype=float]

# Example 6: Specify an initial value for the sum
sum = np.sum[arr, axis=1, initial=15]

# Example 7: Get the sum using nansum[]
arr = np.array[[[2, 3], [4, np.nan]]]
arr1 = np.nansum[arr]

2. Cú pháp tổng[]

Sau đây là cú pháp của hàm sum[]


# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]

2. 1 Các tham số của sum[]

Dưới đây là các tham số của hàm sum[]

  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    2 – Mảng đầu vào, trong đó các phần tử được tính dưới dạng tổng
  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    3 – Trục hoặc các trục dọc theo đó một tổng được thực hiện. Giá trị mặc định, axis=None, nó tính tổng tất cả các phần tử của mảng đầu vào. Nếu trục âm, số đếm bắt đầu từ trục cuối cùng đến trục đầu tiên. axis = 0 có nghĩa là dọc theo cột và axis = 1 có nghĩa là làm việc dọc theo hàng
  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    0 – Bạn có thể sử dụng dtype để chỉ định loại dữ liệu đầu ra được trả về
  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    5 – Mảng đầu ra thay thế để đặt kết quả. Mảng phải có cùng kích thước với đầu ra dự kiến. Mặc định là Không có
  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    6 – Keepdims là một tham số boolean. Nếu điều này được đặt thành True, các trục bị giảm sẽ được để lại trong kết quả dưới dạng kích thước với kích thước một
  • 
    # Syntax of sum[]
    numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
    
    1 – Tham số ban đầu cung cấp Giá trị bắt đầu cho tổng

2. 2 Giá trị trả về của tổng[]

Nó trả về một mảng, nó chứa tổng các phần tử của mảng đầu vào dọc theo trục đã chỉ định. Nếu trục = Không thì nó sẽ trả về một giá trị vô hướng

3. Cách sử dụng hàm NumPy sum[]

Hàm sum[] trong gói NumPy của Python dùng để tính tổng tất cả các phần tử, tổng từng hàng, tổng từng cột của một mảng cho trước

3. 1 Lấy Tổng của Mảng 1-D

Hãy xem cách tính tổng của tất cả các phần tử của mảng 1 chiều. Để làm như vậy trước tiên, hãy khởi tạo mảng 1-D NumPy bằng cách sử dụng


# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
8 và chuyển mảng này làm đầu vào cho hàm sum[]


import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72

3. 2 Lấy tổng của mảng 2 chiều

Hãy tính tổng tất cả các phần tử của mảng 2 chiều. Khi sử dụng mảng 2 chiều, nó sẽ xem xét tất cả các giá trị trong mảng để tính tổng và trả về một giá trị vô hướng. Nó coi


# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
9 theo mặc định. Lưu ý rằng nó không tính tổng của từng hàng hoặc tổng của từng cột thay vào đó tính tổng của tất cả các giá trị


# Create 2-D numpy array
arr = np.array[[[12, 14], [17, 19],[13, 16],[24, 27]]]

# Get the Sum of all the elements in an array            
sum = np.sum[arr]
print["Sum of all the elements is :", sum]

# Output
# Sum of all the elements is : 142

4. Lấy tổng của mỗi cột của mảng 2 chiều

Để tính tổng cho từng cột của mảng NumPy, hãy chỉ định


import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
0. Điều này giúp bạn tính tổng dọc theo trục cột khi bạn có mảng 2 chiều. Điều này trả về ndarray có kích thước bằng với số lượng cột trong mảng của bạn


# Get the sum of each column element along axis = 0
sum = np.sum[arr, axis=0]
print[sum]

# Output
# [66 76]

5 Lấy Tổng của Mỗi Hàng của Mảng 2-D

Tương tự, để tính tổng cho mỗi hàng, hãy chỉ định


import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
1. Điều này giúp bạn tính tổng dọc theo trục hàng. Điều này trả về ndarray có kích thước bằng với số hàng trong mảng của bạn


# Get the sum of each row element along axis = 1
sum = np.sum[arr, axis=1]
print[sum]

# Output
# [26 36 29 51]

6. Chỉ định loại giá trị trả về

Theo mặc định, kiểu trả về của NumPy sum[] sẽ bằng với kiểu phần tử mảng đầu vào của bạn. Trong các ví dụ trên của chúng tôi, chúng tôi có các mảng kiểu


import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
3 do đó, kết quả cũng ở kiểu int. Hãy thay đổi điều này bằng cách chỉ định đối số dtype. Sử dụng đối số này, bạn có thể chỉ định kiểu trả về của hàm sum[]

Ví dụ sau tính tổng cho mỗi hàng và trả về tổng ở kiểu float


# Get the sum of an array to specify data type 
sum = np.sum[arr, axis=1, dtype=float]
print[sum]

# OutPut
# [26. 36. 29. 51.]

7. Xem xét giá trị ban đầu cho NumPy sum[]

Bạn cũng có thể bắt đầu tính tổng với một giá trị ban đầu khác 0 bằng cách sử dụng đối số


# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
1. Khi được sử dụng đối số

# Syntax of sum[]
numpy.sum[array, axis=None, dtype=None, out=None, keepdims=, initial=]
1, tổng [] bắt đầu với giá trị ban đầu này và thêm tất cả các phần tử vào đó để nhận tổng/giá trị tổng cuối cùng


# Specify an initial value for the sum
sum = np.sum[arr, axis=1, initial=15]
print[sum]

# Output
# [41 51 44 66]

8. Nhận tổng bằng cách sử dụng np. NaN

Nếu bạn có các giá trị


import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
6 trong mảng của mình, việc áp dụng hàm sum[] sẽ dẫn đến kết quả đầu ra là

import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
7. Để khắc phục điều này, hãy sử dụng hàm

import numpy as np

# Create a numpy array
arr = np.array[[14, 17, 19, 22]]

# Get the sum of an array 
sum = np.sum[arr]
print[sum]

# Output
# 72
8, nansum[] được sử dụng để tính tổng của mảng bỏ qua các giá trị nan. Hàm này cũng được sử dụng để tính tổng tất cả các phần tử, tổng từng hàng và tổng từng cột của một mảng nhất định bằng cách bỏ qua các giá trị NaN


# Get the sum using nansum[]
arr = np.array[[[2, 3], [4, np.nan]]]
arr1 = np.nansum[arr]
print[arr1]

# Output :
# 9.0

7. Phần kết luận

Trong bài viết này, tôi đã giải thích cách sử dụng hàm tổng Python NumPy[]. Sử dụng hàm này để tính tổng của các phần tử mảng cùng với trục, kiểu dữ liệu và giá trị ban đầu đã chỉ định với các ví dụ. Và cũng tìm hiểu điều gì sẽ xảy ra nếu bạn có các giá trị NaN trong mảng và cách khắc phục điều này bằng cách sử dụng hàm nansum[]

Chủ Đề