কম্পিউটার টিউটোরিয়াল

পাইথনে জটিল ইনপুটের অসীম বড় সসীম সংখ্যা দিয়ে প্রতিস্থাপন করুন এবং NaN পূরণ করুন


NaN কে শূন্য দিয়ে প্রতিস্থাপন করতে এবং অসীম কে বড় সসীম সংখ্যা দিয়ে প্রতিস্থাপন করতে numpy.nan_to_num() মেথডটি ব্যবহার করা হয়। এই মেথডটি অ-সসীম মানগুলো প্রতিস্থাপন করার পর x রিটার্ন করে। যদি copy হয় False, তবে এটি নিজে x হয়তে পারে। প্রথম প্যারামিটার হলো ইনপুট ডেটা। দ্বিতীয় প্যারামিটার copy, x-র কপি তৈরি করা উচিত কিনা (True) অথবা ইন-প্লেস প্রতিস্থাপন (False)। ইন-প্লেস অপারেশন তখনই ঘটে যখন অ্যারেতে কাস্ট করার জন্য কপি লাগে না। ডিফল্ট হলো True।

তৃতীয় প্যারামিটার nan, NaN মান পূরণের জন্য ব্যবহার করা মান। কোনো মান না দেওয়া থাকলে NaN মানগুলো 0.0 দিয়ে প্রতিস্থাপিত হবে। চতুর্থ প্যারামিটার posinf, ধনাত্মক অসীম মান পূরণের জন্য ব্যবহার করা মান। কোনো মান না দেওয়া থাকলে ধনাত্মক অসীম মানগুলো একটি বড় সংখ্যা দিয়ে প্রতিস্থাপিত হবে। পঞ্চম প্যারামিটার neginf, ঋণাত্মক অসীম মান পূরণের জন্য ব্যবহার করা মান। কোনো মান না দেওয়া থাকলে ঋণাত্মক অসীম মানগুলো একটি খুব ছোট (বা ঋণাত্মক) সংখ্যা দিয়ে প্রতিস্থাপিত হবে।

ধাপসমূহ

প্রথমে প্রয়োজনীয় লাইব্রেরি ইম্পোর্ট করুন:

import numpy as np

array() মেথড ব্যবহার করে একটি নামপাই অ্যারে তৈরি করুন:

arr = np.array([complex(np.inf, np.nan), np.nan])

অ্যারেটি প্রদর্শন করুন:

print("আমাদের অ্যারে...\n", arr)

ডাইমেনশন পরীক্ষা করুন:

print("\nআমাদের অ্যারের ডাইমেনশন...\n", arr.ndim)

ডেটা টাইপ জানুন:

print("\nআমাদের অ্যারে অবজেক্টের ডেটা টাইপ...\n", arr.dtype)

শেপ (Shape) দেখুন:

print("\nআমাদের অ্যারে অবজেক্টের শেপ...\n", arr.shape)

NaN 11111 দিয়ে প্রতিস্থাপন করতে numpy.nan_to_num() মেথডটি ব্যবহার করুন:

print("\nফলাফল...\n", np.nan_to_num(arr, nan=11111))

সম্পূর্ণ উদাহরণ

import numpy as np
# array() মেথড ব্যবহার করে একটি নামপাই অ্যারে তৈরি করা
arr = np.array([complex(np.inf, np.nan), np.nan])
# অ্যারে প্রদর্শন
print("আমাদের অ্যারে...\n", arr)
# ডাইমেনশন পরীক্ষা
print("\nআমাদের অ্যারের ডাইমেনশন...\n", arr.ndim)
# ডেটা টাইপ
print("\nআমাদের অ্যারে অবজেক্টের ডেটা টাইপ...\n", arr.dtype)
# শেপ
print("\nআমাদের অ্যারে অবজেক্টের শেপ...\n", arr.shape)
# NaN 11111 দিয়ে প্রতিস্থাপন
print("\nফলাফল...\n", np.nan_to_num(arr, nan=11111))

আউটপুট

আমাদের অ্যারে... [inf+nanj nan +0.j]
আমাদের অ্যারের ডাইমেনশন... 1
আমাদের অ্যারে অবজেক্টের ডেটা টাইপ... complex128
আমাদের অ্যারে অবজেক্টের শেপ... (2,)
ফলাফল... [1.79769313e+308+11111.j 1.11110000e+004 +0.j]

  1. পাইথন পান্ডাসে fillna(0) ব্যবহার করে ডেটাফ্রেমের সব NaN মান ০ দিয়ে প্রতিস্থাপন করা

  2. পান্ডাসে interpolate() দিয়ে NaN মান পূরণ করা

  3. প্রতিটি X-র জন্য একাধিক Y মান সহ Python স্ক্যাটার প্লট

  4. Matplotlib-এ NaN মান দিয়ে প্লট এবং কাজ করার পদ্ধতি