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

পাইথন - স্ট্রিং অ্যারে থেকে ফ্লোট অ্যারে রূপান্তর (NumPy)

নামপাই (NumPy) অ্যারে-এ স্ট্রিং ধরনের সংখ্যাগুলো ফ্লোটে রূপান্তর করা ডেটা প্রসেসিং, মেশিন লার্নিং এবং সাইয়েন্টifik কম্পিউটিং-এ সাধারণ কাজ। নিচে তিনটি দক্ষ পদ্ধতি দেখানো হলো।

উদাহরণ

import numpy as np
ini_array = np.array(["1.1", "1.5", "2.7", "8.9"])
print("প্রাথমিক অ্যারে:", ini_array)
# ['1.1' '1.5' '2.7' '8.9'] dtype='<U32'

১. astype() (সর্বাধিক সাধারণ এবং সুপারিশ করা)

res = ini_array.astype(np.float64)  # বা np.float (ডিপ্রিকেটেড)
print("ফাইনাল অ্যারে:", res)
# [1.1 1.5 2.7 8.9] dtype='float64'

২. np.fromstring() (স্ট্রিং থেকে ডায়রেক্ট পার্স)

# প্রথমে জয়েন করুন, তারপর পার্স
joined = ', '.join(ini_array)  # "1.1, 1.5, 2.7, 8.9"
res = np.fromstring(joined, dtype=np.float64, sep=', ')
print("ফাইনাল অ্যারে:", res)

৩. np.asarray() dtype প্যারামিটারসহ

res = np.asarray(ini_array, dtype=np.float64, order='C')
print("ফাইনাল অ্যারে:", res)

আউটপুট (সব পদ্ধতির জন্য একই)

[1.1 1.5 2.7 8.9]

তুলনা ও সুপারিশ

পদ্ধতিদক্ষতাব্যবহারিকতাসুপারিশ
astype()★★★★★সাধারণ কনভার্সনের জন্য সেরাপ্রাথমিক পছন্দ
asarray()★★★★☆অতিরিক্ত কন্ট্রোল (order, copy)যখন কপি এড়াতে চান
fromstring()★★★☆☆একটি বড় স্ট্রিং থেকে পার্সিংCSV/লগ ফাইল পার্সিংয়ে

ত্রুটি হ্যান্ডলিং

# অবৈধ স্ট্রিং থাকলে এরর হয়
bad_array = np.array(["1.1", "abc", "2.7"])

# নিরাপদ কনভার্সন: errors='coerce' (পান্ডাসে) বা try-except
# নামপাইর সরাসরি errors প্যারামিটার নেই, তাই:
def safe_convert(arr):
    result = []
    for x in arr:
        try:
            result.append(float(x))
        except ValueError:
            result.append(np.nan)
    return np.array(result)

print(safe_convert(bad_array))  # [1.1 nan 2.7]
সেরা অনুশীলন: সাধারণ কেসে arr.astype(np.float64) ব্যবহার করুন। এটি স্পষ্ট, দ্রুত এবং নামপাই-এর ইডiones।
  1. পাইথনে স্ট্রিংয়ের লিস্টকে টাপলের লিস্টে রূপান্তর

  2. পাইথনে স্ট্রিং এবং ক্যারেক্টারের লিস্টকে ক্যারেক্টারের লিস্টে রূপান্তর

  3. পাইথনে স্ট্রিং লিস্টের এলিমেন্টের কেস রূপান্তর

  4. পাইথন টাপল কে অ্যারে (লিস্ট) এ কনভার্ট করা