Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

คืนค่า cumulative sum ของอาร์เรย์ตาม axis 0 ถือ NaN เป็นศูนย์ใน Python


ภาพรวม

ใช้ numpy.nancumsum() คำนวณ cumulative sum ตาม axis=0 โดยถือ NaN เป็น 0

ขั้นตอนการทำงาน

1. นำเข้า NumPy

import numpy as np

2. สร้างอาร์เรย์ 2D พร้อม NaN

arr = np.array([[10, 20, 30], [40, np.nan, 60]])

3. แสดงข้อมูลอาร์เรย์

print("Our Array...\n", arr)
print("\nDimensions of our Array...\n", arr.ndim)
print("\nDatatype of our Array object...\n", arr.dtype)

4. คำนวณ cumulative sum ตาม axis=0

print("\nCumulative Sum of array elements...\n", np.nancumsum(arr, axis=0))

ตัวอย่างโค้ดเต็ม

import numpy as np
arr = np.array([[10, 20, 30], [40, np.nan, 60]])
print("Our Array...\n", arr)
print("\nDimensions of our Array...\n", arr.ndim)
print("\nDatatype of our Array object...\n", arr.dtype)
print("\nCumulative Sum of array elements...\n", np.nancumsum(arr, axis=0))

ผลลัพธ์

Our Array...
[[10. 20. 30.]
 [40. nan 60.]]
Dimensions of our Array...
2
Datatype of our Array object... float64
Cumulative Sum of array elements...
[[10. 20. 30.]
 [50. 20. 90.]]

คำอธิบาย: Column 0: 10, 10+40=50 | Column 1: 20, 20+NaN(=0)=20 | Column 2: 30, 30+60=90