আমার কাছে এমন একটি অ্যারে রয়েছে যা দেখতে দেখতে এটি দেখতে পারে:
ANOVAInputMatrixValuesArray = [[ 0.96488889, 0.73641667, 0.67521429, 0.592875,
0.53172222], [ 0.78008333, 0.5938125, 0.481, 0.39883333, 0.]]
লক্ষ্য করুন যে সারিগুলির একটির শেষে একটি শূন্য মান রয়েছে। সমস্ত কোষে শূন্যহীন মানযুক্ত যে কোনও সারি রাখার সময় আমি একটি শূন্যযুক্ত যে কোনও সারি মুছতে চাই।
কিন্তু অ্যারেতে প্রতিবার জনসংখ্যাযুক্ত হওয়ার সাথে সাথে বিভিন্ন সংখ্যক সারি থাকবে এবং প্রতিবার শূন্যগুলি বিভিন্ন সারিতে অবস্থান করবে।
নিম্নলিখিত কোডের লাইন দিয়ে আমি প্রতিটি সারিতে অ-শূন্য উপাদানের সংখ্যা পেয়েছি:
NumNonzeroElementsInRows = (ANOVAInputMatrixValuesArray != 0).sum(1)
উপরের অ্যারের জন্য, NumNonzeroElementsInRows
রয়েছে: [5 4]
পাঁচটি ইঙ্গিত দেয় যে সারি 0-এর সমস্ত সম্ভাব্য মান ননজারো, যখন চারটি নির্দেশ করে যে সারি 1 এর সম্ভাব্য মানগুলির মধ্যে একটি শূন্য।
অতএব, আমি শূন্য মান সহ সারিগুলি সন্ধান এবং মুছতে নিম্নলিখিত কোডের লাইনগুলি ব্যবহার করার চেষ্টা করছি।
for q in range(len(NumNonzeroElementsInRows)):
if NumNonzeroElementsInRows[q] < NumNonzeroElementsInRows.max():
p.delete(ANOVAInputMatrixValuesArray, q, axis=0)
তবে কিছু কারণে, এই কোডটি কিছু করতে পারে বলে মনে হচ্ছে না, যদিও প্রচুর মুদ্রণ কমান্ড করা ইঙ্গিত দেয় যে সমস্ত ভেরিয়েবলগুলি সঠিকভাবে কোডের দিকে এগিয়ে চলেছে বলে মনে হচ্ছে।
"শূন্যের মান ধারণ করে এমন কোনও সারি মুছে ফেলতে অবশ্যই কিছু সহজ উপায় থাকতে হবে।"
এটি সম্পাদন করতে কি কোড আমাকে লিখতে পারেন?
numpy.delete(x, index)
কাজ করে না তা আমি বুঝতে পারি না।