نوٹ: NumPy Numarray کا جانشین ہے اور NumArray کو تبدیل کرنے کے لئے استعمال کیا جاتا ہے۔ SAGE NumPy اور کئی دیگر ٹولز پر مبنی ایک مربوط ریاضی کا سافٹ ویئر پیکج ہے جس کا مقصد میگما ، میپل ، ریاضی اور میٹلب جیسے ٹولز کو تبدیل کرنا ہے۔ آج میں آن لائن NumPy کے بارے میں کچھ تلاش کرنا چاہتا تھا اور NumPy کے ساتھ ریورس میٹرکس کی تلاش کرنے کی کوشش کر رہا تھا لیکن مجھے چینی زبان میں کوئی معلومات نہیں ملی۔ فورم پر کچھ لوگوں نے مجھ سے پوچھا کہ میں python کے ساتھ میٹرکس کیسے بناؤں۔ میں نے ریورس میٹرکس کی تلاش کی اور کوئی جواب نہیں دیا۔ لہذا میں نے NumPy کی سرکاری دستاویزات کو پایا ، جس میں ایک چھوٹا سا حصہ میٹرکس آبجیکٹ کے بارے میں تھا ، لہذا میں نے اس حصے کو چینی زبان میں ترجمہ کیا ، جس میں تھوڑی سی شراکت کی گئی ، وقت کم ہے ، ہجے کی غلطیوں کی جانچ پڑتال نہیں کی گئی ہے ، کوئی مسئلہ ہے۔ معاف کیجئے گا۔ مترجم: Keengle.
میٹرکس کی قسم ndarray کی قسم سے وراثت میں ملتی ہے اور اس وجہ سے ndarray کی تمام اعداد و شمار کی خصوصیات اور طریقوں پر مشتمل ہے۔ میٹرکس کی قسم اور ndarray کی قسم کے درمیان چھ اہم اختلافات ہیں جو غیر متوقع نتائج کا باعث بنتے ہیں جب آپ میٹرکس آبجیکٹ کو صفوں کے طور پر کام کرتے ہیں۔
1) میٹرکس آبجیکٹ کو ایک Matlab طرز کی سٹرنگ کا استعمال کرتے ہوئے بنایا جا سکتا ہے، یعنی ایک سٹرنگ جس میں خالی جگہوں کے ساتھ الگ الگ صفیں ہوتی ہیں اور اس کے بعد عددی اعداد ہوتے ہیں۔
2) میٹرکس آبجیکٹ ہمیشہ دو جہتی ہوتے ہیں۔ اس میں بہت زیادہ اثرات مرتب ہوتے ہیں۔ مثال کے طور پر ، m.ravel (()) کی واپسی کی قیمت دو جہتی ہے ، اور ممبر کے انتخاب کی واپسی کی قیمت بھی دو جہتی ہے ، لہذا ترتیب کا رویہ صف سے مختلف ہوگا۔
3) میٹرکس کی قسم کے ضربات میں صف کے ضربات کا احاطہ کیا جاتا ہے، اور اس میں میٹرکس کے ضرب کے آپریشن کا استعمال کیا جاتا ہے۔ جب آپ میٹرکس کی واپسی کی قدر وصول کرتے ہیں تو، اس بات کو یقینی بنائیں کہ آپ ان افعال کے معنی کو سمجھتے ہیں. خاص طور پر، حقیقت یہ ہے کہ تقریب asanarray ((m) ایک میٹرکس واپس کرے گا، اگر یہ ایک m میٹرکس ہے.
4) میٹرکس کی قسم کی جڑ کی کارروائی بھی اس سے پہلے کی جڑ کی کارروائیوں پر محیط ہے ، جو میٹرکس کی جڑ کا استعمال کرتی ہے۔ اس حقیقت کی بنیاد پر ، ایک بار پھر یاد دلائیں کہ اگر آپ میٹرکس کی جڑ کو بطور پیرامیٹر استعمال کرتے ہیں تو اس کی درخواست کریں arasanarray ((...) جیسا کہ اوپر ہے۔
5) میٹرکس کی ڈیفالٹ array_priority 10.0 ہے ، لہذا ndarray اور میٹرکس آبجیکٹ کے ساتھ مل کر آپریشن ہمیشہ میٹرکس کو واپس کرتا ہے۔
6) میٹرکس میں کئی مخصوص خصوصیات ہیں جو حساب کتاب کو آسان بناتی ہیں ، ان خصوصیات میں شامل ہیں:
میٹرکس کلاس ndarray کی ایک Python کی ذیلی کلاس ہے۔ آپ اس عمل کو سیکھ کر اپنی ndarray کی ذیلی کلاس بھی بنا سکتے ہیں۔ میٹرکس آبجیکٹ کو دوسرے میٹرکس آبجیکٹ، الفاظ، سٹرنگز، یا کسی اور کے ساتھ بھی بنایا جا سکتا ہے جو کہ ndarray کے بطور تبدیل کیا جا سکتا ہے۔ مزید برآں، NumPy میں، میٹرکس کے لئے میٹرکس کا ایک نام ہے۔
مثال 1: اسٹرنگ کے ساتھ ایک میٹرکس کی تعمیر
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]])
میٹرکس ((data، dtype=None، copy=True)) اعداد و شمار کو میٹرکس میں تبدیل کیا جاتا ہے۔ اگر dtype None ہے تو ، ڈیٹا کی قسم ڈیٹا کے مواد سے طے ہوتی ہے۔ اگر کاپی True ہے تو ، ڈیٹا میں موجود اعداد و شمار کی کاپی کی جاتی ہے ، ورنہ اصل ڈیٹا بفر استعمال کیا جاتا ہے۔ اگر ڈیٹا کا بفر علاقہ نہیں ملا ہے تو ، یقینا. ، ڈیٹا کی کاپی کی جاتی ہے۔ نوٹ: میٹرکس میٹرکس دراصل ایک قسم ہے ، لہذا جب آپ مثال بناتے ہیں تو ، آپ کو میٹرکس.new (((میٹرکس ، ڈیٹا ، dtype ، کاپی) کو کال کرنا چاہئے) ۔ میٹ یہ صرف میٹرکس کا ایک عرفی نام ہے۔ Asmatrix ((data، dtype=None) ڈیٹا واپس کرتا ہے جو نقل نہیں کیا گیا تھا۔ اس کا برابر ہے میٹرکس ((data, dtype, copy=False) ‒) Bmat ((obj، ldict=None، gdict=None) ایک سٹرنگ، نچلے درجے کی ترتیب، یا ایک صف کا استعمال کرتے ہوئے ایک میٹرکس کی تعمیر؛ یہ کمانڈ آپ کو دیگر اشیاء سے میٹرکس کی تعمیر کی اجازت دیتا ہے؛ جس میں جب obj ایک سٹرنگ ہے تب ہی اس کے لئے 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]]
تحریر: سو فرانک