নোটঃ NumPy হল Numarray এর উত্তরসূরি, NumArray এর পরিবর্তে। SAGE হল NumPy এবং অন্যান্য কয়েকটি টুলের উপর ভিত্তি করে গাণিতিক সফটওয়্যার প্যাকেজ, যার লক্ষ্য হল Magma, Maple, Mathematica এবং Matlab এর মতো টুলকে প্রতিস্থাপন করা। আজ আমি NumPy সম্পর্কে কিছু তথ্য অনলাইনে খুঁজতে চাই এবং NumPy বিপরীতমুখী ম্যাট্রিক্স ব্যবহার করে দেখতে চাই, কিন্তু আমি চাইনিজ ভাষায় কোন তথ্য খুঁজে পাইনি, ফোরামে কেউ আমাকে জিজ্ঞাসা করেছিল কিভাবে পাইথন ব্যবহার করে ম্যাট্রিক্স বিপরীতমুখী করতে হয়, এবং কেউ উত্তর দেয়নি। তাই আমি NumPy এর অফিসিয়াল ডকুমেন্টেশন খুঁজে পেয়েছি, যার মধ্যে একটি ছোট্ট অনুচ্ছেদটি ম্যাট্রিক্স অবজেক্টের সাথে পরিচয় করিয়ে দেয়, তাই আমি এই অনুচ্ছেদটি চীনা ভাষায় অনুবাদ করেছি, একটি ছোট্ট অবদান রেখেছি, সময় কম ছিল, বানান ত্রুটি পরীক্ষা করতে পারিনি, সমস্যা ছিল। দুঃখিত। অনুবাদকঃ Keengle
ম্যাট্রিক্স টাইপটি ndarray টাইপের উত্তরাধিকারী এবং তাই ndarray এর সমস্ত ডেটা বৈশিষ্ট্য এবং পদ্ধতি ধারণ করে। ম্যাট্রিক্স টাইপগুলি এবং ndarray টাইপগুলির মধ্যে ছয়টি গুরুত্বপূর্ণ পার্থক্য রয়েছে, যখন আপনি ম্যাট্রিক্স অবজেক্ট হিসাবে অ্যারেগুলিতে কাজ করেন তখন এই পার্থক্যগুলি অপ্রত্যাশিত ফলাফলের দিকে পরিচালিত করে।
৬) ম্যাট্রিক্সের কিছু স্বতন্ত্র বৈশিষ্ট্য রয়েছে যা গণনাকে আরও সহজ করে তোলে, যেমনঃ
(a) .T – নিজের স্থানান্তরকে ফিরিয়ে দেয়
(b) .H – নিজের রেজোনিউম ট্রান্সফরমেন্টে ফিরে
© .I – নিজের বিপরীত ম্যাট্রিক্স ফেরত দেয়
(d) .A – একটি 2D অ্যারের একটি দৃশ্য যা তার নিজস্ব তথ্য ফেরত দেয় (কোনও কপি করা হয়নি)
ম্যাট্রিক্স ক্লাস হল ndarray এর একটি পাইথন সাবক্লাস, এবং আপনি এই বাস্তবায়নটি শিখতে পারেন আপনার নিজের ndarray সাবক্লাস তৈরি করতে। ম্যাট্রিক্স অবজেক্টগুলি অন্যান্য ম্যাট্রিক্স অবজেক্ট, স্ট্রিং, বা অন্য কিছু ব্যবহার করে তৈরি করা যেতে পারে যা একটি ndarray এর প্যারামিটারগুলিতে রূপান্তরিত হতে পারে। এছাড়াও, NumPy এ, mat হল matrix এর অন্য নাম
উদাহরণ ১ঃ স্ট্রিং ব্যবহার করে একটি ম্যাট্রিক্স তৈরি করা
import numpy as np
a=np.mat('1 2 3; 4 5 3')
print (a*a.T).I
[[ 0.29239766 -0.13450292]
[-0.13450292 0.08187135]]
np.matrix([[ 1.+0.j, 5.+0.j, 10.+0.j],
[ 1.+0.j, 3.+0.j, 0.+4.j]])
np.mat( np.random.rand(3,3) ).T
np.matrix([[ 0.81541602, 0.73987459, 0.03509142],
[ 0.14767449, 0.60539483, 0.05641679],
[ 0.43257759, 0.628695 , 0.47413553]])
Matrix( data, dtype=None, copy=True ) প্যারামিটার ডেটা দিয়ে আসা ডেটাকে ম্যাট্রিক্সে রূপান্তর করা হবে। dtype যদি None হয় তবে ডেটা টাইপ ডেটার বিষয়বস্তু দ্বারা নির্ধারিত হবে। copy যদি True হয় তবে ডেটাতে থাকা ডেটা অনুলিপি করা হবে, অন্যথায় মূল ডেটা বাফিং ব্যবহার করা হবে। যদি ডেটা বাফিং অঞ্চল না পাওয়া যায় তবে অবশ্যই ডেটা অনুলিপি করা হবে। দ্রষ্টব্যঃ ম্যাট্রিক্স ম্যাট্রিক্স আসলে একটি প্রকার, সুতরাং আপনি যখন উদাহরণটি তৈরি করেন তখন ম্যাট্রিক্স.new ((ম্যাট্রিক্স, ডেটা, ডিটাইপ, কপি) ডাকা হবে। Mat “ম্যাট্রিক্স” এর অন্য একটি নাম। Asmatrix(data, dtype=None) যে ডাটা কপি করা হয়নি তা ফেরত দিন। এটি matrix ((data, dtype, copy=False) এর সমান। Bmat(obj, ldict=None, gdict=None) একটি স্ট্রিং ব্যবহার করে একটি ম্যাট্রিক্স তৈরি করুন। এই কমান্ডটি আপনাকে অন্য বস্তুর উপর ভিত্তি করে ম্যাট্রিক্স তৈরি করতে দেয়। obj একটি স্ট্রিং হলে আপনি arguments ldict এবং gdict ব্যবহার করতে পারেন, যা স্থানীয় এবং মডিউলগুলির জন্য একটি অভিধান। আপনি যদি তাদের না সরবরাহ করেন তবে সিস্টেমটি এটি সরবরাহ করবে।
A=np.mat('2 2; 2 2'); B=np.mat('1 1; 1 1');
print(np.bmat('A B; B A'))
[[2 2 1 1]
[2 2 1 1]
[1 1 2 2]
[1 1 2 2]]
সু ফ্র্যাঙ্ক