NumPy Arrays তৈরি এবং ম্যানিপুলেশন

NumPy: Numerical Python - পাইথন ডেটা সায়েন্স (Python Data Science) - Machine Learning

483

NumPy হল Python-এর একটি গুরুত্বপূর্ণ লাইব্রেরি যা মূলত নম্বরিক ডেটা (Numerical Data) পরিচালনা এবং গাণিতিক কাজ করার জন্য ব্যবহৃত হয়। NumPy-র প্রধান সুবিধা হলো এর Arrays এবং Matrix ডেটা স্ট্রাকচার যা অনেক দ্রুত এবং স্মৃতি সাশ্রয়ী হতে পারে। NumPy Arrays এর মাধ্যমে আপনি ডেটা ম্যানিপুলেশন, গাণিতিক অপারেশন, এবং বিভিন্ন ধরনের পরিসংখ্যান বিশ্লেষণ সহজেই করতে পারেন।


১. NumPy Array তৈরি করা

NumPy Arrays তৈরি করার জন্য np.array() ফাংশন ব্যবহার করা হয়। এছাড়া, NumPy এর আরও কিছু ফাংশন রয়েছে যা নির্দিষ্ট ধরণের Arrays তৈরি করতে সহায়ক।

১.১ এনপির (NumPy) অ্যারে তৈরি করা

import numpy as np

# 1D অ্যারে তৈরি
arr_1d = np.array([1, 2, 3, 4, 5])
print(arr_1d)

# 2D অ্যারে তৈরি
arr_2d = np.array([[1, 2, 3], [4, 5, 6]])
print(arr_2d)

# 3D অ্যারে তৈরি
arr_3d = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
print(arr_3d)

১.২ স্পেশাল অ্যারে তৈরি (ডিফল্ট মান সহ)

  1. np.zeros(): সব উপাদান 0 দিয়ে অ্যারে তৈরি।
  2. np.ones(): সব উপাদান 1 দিয়ে অ্যারে তৈরি।
  3. np.arange(): একটি নির্দিষ্ট সীমা পর্যন্ত অ্যারে তৈরি।
  4. np.linspace(): দুটি মানের মধ্যে সমান দৈর্ঘ্যের উপাদান সহ অ্যারে তৈরি।
# 5টি শূন্য (0) দিয়ে অ্যারে তৈরি
zeros_arr = np.zeros(5)
print(zeros_arr)

# 5টি একক (1) দিয়ে অ্যারে তৈরি
ones_arr = np.ones(5)
print(ones_arr)

# 0 থেকে 10 পর্যন্ত 5টি উপাদান নিয়ে অ্যারে তৈরি
range_arr = np.arange(0, 10, 2)
print(range_arr)

# 0 থেকে 10 পর্যন্ত 5টি সমান ভাগে ভাগ করা উপাদান
linspace_arr = np.linspace(0, 10, 5)
print(linspace_arr)

২. NumPy Array এর গুণাগুণ (Attributes)

NumPy Array এর বিভিন্ন গুণাগুণ জানা খুবই গুরুত্বপূর্ণ, যেমন আকার (shape), ডেটা টাইপ (dtype), আয়তন (size) ইত্যাদি।

arr = np.array([[1, 2, 3], [4, 5, 6]])

# আকার (Shape)
print("Shape:", arr.shape)

# ডেটা টাইপ (Data Type)
print("Data type:", arr.dtype)

# আয়তন (Size)
print("Size:", arr.size)

# ডাইমেনশন (Dimensions)
print("Dimensions:", arr.ndim)

৩. NumPy Array ম্যানিপুলেশন

৩.১ Array এর আকার পরিবর্তন করা (Reshaping)

NumPy অ্যারের আকার পরিবর্তন করার জন্য reshape() ফাংশন ব্যবহার করা হয়। আপনি অ্যারের আকার নতুনভাবে নির্ধারণ করতে পারেন, যেমন 1D থেকে 2D বা 2D থেকে 3D ইত্যাদি।

arr = np.array([1, 2, 3, 4, 5, 6])

# 2D অ্যারে হিসেবে আকার পরিবর্তন
reshaped_arr = arr.reshape(2, 3)
print(reshaped_arr)

৩.২ Array একত্রিত করা (Concatenation)

np.concatenate() বা np.vstack(), np.hstack() ফাংশন দ্বারা একাধিক অ্যারে একত্রিত (combine) করা যায়।

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# উল্লম্ব (Vertical) সংযুক্তিকরণ
vstack_arr = np.vstack((arr1, arr2))
print(vstack_arr)

# আড়াআড়ি (Horizontal) সংযুক্তিকরণ
hstack_arr = np.hstack((arr1, arr2))
print(hstack_arr)

৩.৩ Array ভাগ করা (Splitting)

NumPy অ্যারেকে বিভক্ত (split) করার জন্য np.split(), np.hsplit(), np.vsplit() ফাংশন ব্যবহার করা হয়।

arr = np.array([1, 2, 3, 4, 5, 6])

# 3 ভাগে বিভক্ত
split_arr = np.split(arr, 3)
print(split_arr)

৩.৪ Array এর উপাদান অ্যাক্সেস (Accessing Elements)

NumPy অ্যারের নির্দিষ্ট উপাদান অ্যাক্সেস করার জন্য সাধারণভাবে ইনডেক্সিং এবং স্লাইসিং (slicing) ব্যবহার করা হয়।

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

# ইনডেক্সিং
print(arr[0])  # প্রথম উপাদান

# স্লাইসিং
print(arr[1:4])  # দ্বিতীয় থেকে চতুর্থ উপাদান

৩.৫ Array এর উপাদান পরিবর্তন (Modifying Elements)

NumPy অ্যারের নির্দিষ্ট উপাদান পরিবর্তন করা যায়।

arr = np.array([1, 2, 3, 4, 5])

# দ্বিতীয় উপাদান পরিবর্তন করা
arr[1] = 10
print(arr)

৪. NumPy Array এর গাণিতিক অপারেশন

NumPy অ্যারের সাথে সহজেই গাণিতিক অপারেশন করা যায়। আপনি সরাসরি অ্যারের উপাদানগুলির উপর গাণিতিক কাজ করতে পারেন যেমন যোগ, বিয়োগ, গুণ, ভাগ, ম্যাট্রিক্স অপারেশন ইত্যাদি।

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# যোগ
add = arr1 + arr2
print("Sum:", add)

# বিয়োগ
subtract = arr1 - arr2
print("Difference:", subtract)

# গুণ
multiply = arr1 * arr2
print("Product:", multiply)

# ভাগ
divide = arr1 / arr2
print("Division:", divide)

৪.১ ম্যাট্রিক্স গুণ (Matrix Multiplication)

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])

# ম্যাট্রিক্স গুণ
matrix_multiply = np.dot(arr1, arr2)
print("Matrix Multiplication:\n", matrix_multiply)

৪.২ অপরিবর্তনীয় গাণিতিক ফাংশন (Universal Functions)

NumPy তে এমন অনেক গাণিতিক ফাংশন রয়েছে যেগুলি অ্যারের উপাদানগুলির ওপর একসাথে কাজ করে। এগুলিকে universal functions (ufuncs) বলা হয়।

arr = np.array([1, 4, 9, 16])

# Square root ফাংশন
sqrt_arr = np.sqrt(arr)
print("Square Roots:", sqrt_arr)

# Exponential ফাংশন
exp_arr = np.exp(arr)
print("Exponential:", exp_arr)

সারাংশ

NumPy Arrays তৈরি এবং ম্যানিপুলেশন সহজ এবং শক্তিশালী উপায়ে ডেটা পরিচালনা করতে সহায়ক। NumPy অ্যারে ব্যবহার করে আপনি দ্রুত গাণিতিক অপারেশন, ডেটা ম্যানিপুলেশন, এবং বিশ্লেষণ করতে পারবেন। আপনি NumPy এর বিভিন্ন ফাংশন, যেমন reshape(), concatenate(), split(), এবং ufuncs ব্যবহার করে ডেটাকে দক্ষভাবে ম্যানিপুলেট করতে পারেন। NumPy এর সাহায্যে আপনি আরও গভীর বিশ্লেষণ এবং বড় ডেটা সেটের সাথে কাজ করতে সক্ষম হবেন।

Content added By
Promotion

Are you sure to start over?

Loading...