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

ส่งกลับค่าสูงสุดของอาร์เรย์ตามแกน 0 หรือสูงสุดโดยไม่สนใจ NaN ใดๆ ใน Python


ในการคืนค่าสูงสุดของอาร์เรย์หรือค่าสูงสุดที่ไม่สนใจ NaN ใดๆ ให้ใช้เมธอด numpy.nanmax() ใน Python เมธอดส่งคืนอาร์เรย์ที่มีรูปร่างเหมือนกันกับ a โดยลบแกนที่ระบุ ถ้า a เป็นอาร์เรย์ 0-d หรือถ้าแกนคือ None สเกลาร์ ndarray จะถูกส่งกลับ dtype เดียวกับ isreturned พารามิเตอร์ที่ 1 a คืออาร์เรย์ที่มีตัวเลขที่ต้องการสูงสุด หาก a ไม่ใช่อาร์เรย์ ให้ลองแปลง

พารามิเตอร์ตัวที่ 2 แกนคือแกนหรือแกนที่คำนวณค่าสูงสุด ค่าดีฟอลต์คือการคำนวณค่าสูงสุดของอาร์เรย์แบบแบน พารามิเตอร์ตัวที่ 3 ออกมาเป็นอาร์เรย์เอาต์พุตสำรองที่จะวางผลลัพธ์ ค่าเริ่มต้นคือไม่มี; หากมีให้ต้องมีรูปร่างเหมือนกับผลลัพธ์ที่คาดหวัง แต่ประเภทจะถูกโยนถ้าจำเป็น

พารามิเตอร์ตัวที่ 4 keepdims หากตั้งค่านี้เป็น True แกนที่ถูกลดขนาดจะเหลืออยู่ในขนาดผลลัพธ์ที่มีขนาดหนึ่ง ด้วยตัวเลือกนี้ ผลลัพธ์จะออกอากาศอย่างถูกต้องเทียบกับ a เดิม หากค่าเป็นอย่างอื่นที่ไม่ใช่ค่าดีฟอลต์ แล้ว Keepdims จะถูกส่งผ่านไปยังเมธอดสูงสุดของคลาสย่อยของ ndarray หากเมธอด sub-classes ไม่ได้ใช้งาน Keepdim จะมีข้อยกเว้นใดๆ เกิดขึ้น พารามิเตอร์ที่ 5 คือค่าต่ำสุดขององค์ประกอบเอาต์พุต ต้องมีเพื่อให้สามารถคำนวณบนสไลซ์ที่ว่างเปล่าได้

ขั้นตอน

ขั้นแรก นำเข้าไลบรารีที่จำเป็น -

import numpy as np

การสร้างอาร์เรย์ numpy โดยใช้เมธอด array() เราได้เพิ่มองค์ประกอบประเภท int ด้วย nan -

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)

ในการคืนค่าสูงสุดของอาร์เรย์หรือค่าสูงสุดที่ไม่สนใจ NaN ใด ๆ ให้ใช้เมธอด numpy.nanmax() ใน Python -

print("\nResult (nanmax)...\n",np.nanmax(arr, axis = 0))

ตัวอย่าง

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of int type with nan
arr = np.array([[10, 20, 30], [40, np.nan, 60]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# To return the maximum of an array or maximum ignoring any NaNs, use the numpy.nanmax() method in Python
print("\nResult (nanmax)...\n",np.nanmax(arr, axis = 0))

ผลลัพธ์

Our Array...
[[10. 20. 30.]
[40. nan 60.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Result (nanmax)...
[40. 20. 60.]