পরিচিত পরোক্ষ উপশ্রেণী |
বাইটের একটি NdArray
.
পাবলিক পদ্ধতি
বিমূর্ত ByteNdArray | |
বিমূর্ত NdArraySequence < ByteNdArray > | উপাদান (int dimensionIdx) একটি প্রদত্ত মাত্রায় সমস্ত উপাদানের একটি ক্রম দেখায়। |
বিমূর্ত ByteNdArray | পান (দীর্ঘ... স্থানাঙ্ক) প্রদত্ত স্থানাঙ্কে এই বিন্যাসের N-মাত্রিক উপাদান প্রদান করে। |
বিমূর্ত বাইট | getByte (দীর্ঘ... স্থানাঙ্ক) প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের বাইট মান প্রদান করে। |
বিমূর্ত বাইট | getObject (দীর্ঘ... স্থানাঙ্ক) প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের মান প্রদান করে। |
বিমূর্ত ByteNdArray | পড়ুন ( DataBuffer <Byte> dst) |
বিমূর্ত ByteNdArray | পড়ুন ( ByteDataBuffer dst) |
বিমূর্ত NdArraySequence < ByteNdArray > | স্কেলার () এই অ্যারের সমস্ত স্কেলারের একটি ক্রম দেখায়। |
বিমূর্ত ByteNdArray | |
বিমূর্ত ByteNdArray | সেটবাইট (বাইটের মান, দীর্ঘ... স্থানাঙ্ক) প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের বাইট মান নির্ধারণ করে। |
বিমূর্ত ByteNdArray | setObject (বাইট মান, দীর্ঘ... স্থানাঙ্ক) |
বিমূর্ত ByteNdArray | |
বিমূর্ত ByteNdArray | লিখুন ( ByteDataBuffer src) |
বিমূর্ত ByteNdArray | লিখুন ( DataBuffer <Byte> src) |
উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতি
পাবলিক পদ্ধতি
সর্বজনীন বিমূর্ত NdArraySequence < ByteNdArray > উপাদান (int dimensionIdx)
একটি প্রদত্ত মাত্রায় সমস্ত উপাদানের একটি ক্রম দেখায়।
যৌক্তিকভাবে, N-মাত্রিক বিন্যাস একটি একক ভেক্টরে সমতল করা যেতে পারে, যেখানে (n - 1)
তম উপাদানের স্কেলারগুলি (n)
তম উপাদানের আগে থাকে, মোট size()
মানের জন্য।
উদাহরণস্বরূপ, [x, y]
অক্ষগুলিতে একটি nxm
ম্যাট্রিক্স দেওয়া হলে, উপাদানগুলিকে নিম্নলিখিত ক্রমে পুনরাবৃত্তি করা হয়:
x 0 y 0 , x 0 y 1 , ..., x 0 y m-1 , x 1 y 0 , x 1 y 1 , ..., x n-1 y m-1
প্রত্যাবর্তিত ক্রমটি প্রতিটি উপাদান দেখার জন্য পুনরাবৃত্তি করা যেতে পারে, হয় forEach(Consumer)
অথবা forEachIndexed(BiConsumer)
কল করে।
// Iterate matrix for initializing each of its vectors
matrixOfFloats.elements(0).forEach(v -> {
v.set(vector(1.0f, 2.0f, 3.0f));
);
// Iterate a vector for reading each of its scalar
vectorOfFloats.scalars().forEachIdx((coords, s) -> {
System.out.println("Value " + s.getFloat() + " found at " + coords);
});
}
পরামিতি
dimensionIdx | মাত্রার সূচক |
---|
রিটার্নস
- একটি
NdArray
ক্রম
সর্বজনীন বিমূর্ত ByteNdArray পান (দীর্ঘ... স্থানাঙ্ক)
প্রদত্ত স্থানাঙ্কে এই বিন্যাসের N-মাত্রিক উপাদান প্রদান করে।
এই অ্যারের যেকোনো মাত্রার উপাদান পুনরুদ্ধার করা যেতে পারে। উদাহরণস্বরূপ, যদি স্থানাঙ্কের সংখ্যা এই অ্যারের মাত্রার সংখ্যার সমান হয়, তাহলে একটি র্যাঙ্ক-0 (স্ক্যালার) অ্যারে দেওয়া হবে, যে মানটি তখন `array.getObject()` কল করে পাওয়া যেতে পারে।
প্রত্যাবর্তিত উপাদানগুলিতে প্রয়োগ করা যে কোনও পরিবর্তন এই অ্যারের ডেটাকেও প্রভাবিত করে, কারণ এতে কোনও অনুলিপি জড়িত নেই।
মনে রাখবেন যে এই পদ্ধতিটি চালু করা এই অ্যারেটিকে একক স্কেলারে স্লাইস করার একটি সমতুল্য এবং আরও কার্যকর উপায়, যেমন array.get(x, y, z)
হল array.slice(at(x), at(y), at(z))
পরামিতি
স্থানাঙ্ক | অ্যাক্সেস করার জন্য উপাদানের স্থানাঙ্ক, কেউ এই অ্যারে ফিরিয়ে দেবে না |
---|
রিটার্নস
- এই সূচকের উপাদান
পাবলিক বিমূর্ত বাইট getByte (দীর্ঘ... স্থানাঙ্ক)
প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের বাইট মান প্রদান করে।
স্কেলার এলিমেন্ট অ্যাক্সেস করতে, প্রদত্ত স্থানাঙ্কের সংখ্যা অবশ্যই এই অ্যারের মাত্রার সংখ্যার সমান হতে হবে (অর্থাৎ এর র্যাঙ্ক)। যেমন:
ByteNdArray matrix = NdArrays.ofBytes(shape(2, 2)); // matrix rank = 2
matrix.getByte(0, 1); // succeeds, returns 0
matrix.getByte(0); // throws IllegalRankException
ByteNdArray scalar = matrix.get(0, 1); // scalar rank = 0
scalar.getByte(); // succeeds, returns 0
পরামিতি
স্থানাঙ্ক | সমাধানের জন্য স্কেলারের স্থানাঙ্ক |
---|
রিটার্নস
- যে স্কেলার মান
নিক্ষেপ করে
IndexOutOfBoundsException | যদি কিছু স্থানাঙ্ক তাদের নিজ নিজ মাত্রার সীমার বাইরে থাকে |
---|---|
অবৈধ র্যাঙ্ক ব্যতিক্রম | যদি স্থানাঙ্কের সংখ্যা একটি স্কেলার উপাদান অ্যাক্সেস করার জন্য যথেষ্ট না হয় |
সর্বজনীন বিমূর্ত বাইট getObject (দীর্ঘ... স্থানাঙ্ক)
প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের মান প্রদান করে।
স্কেলার এলিমেন্ট অ্যাক্সেস করতে, প্রদত্ত স্থানাঙ্কের সংখ্যা অবশ্যই এই অ্যারের মাত্রার সংখ্যার সমান হতে হবে (অর্থাৎ এর র্যাঙ্ক)। যেমন:
FloatNdArray matrix = NdArrays.ofFloats(shape(2, 2)); // matrix rank = 2
matrix.getObject(0, 1); // succeeds, returns 0.0f
matrix.getObject(0); // throws IllegalRankException
FloatNdArray scalar = matrix.get(0, 1); // scalar rank = 0
scalar.getObject(); // succeeds, returns 0.0f
দ্রষ্টব্য: যদি এই অ্যারেটি একটি আদিম প্রকারের মান সঞ্চয় করে, তবে সেই ধরণের জন্য সাবক্লাসে বিশেষ পদ্ধতির ব্যবহার পছন্দ করুন। উদাহরণস্বরূপ, floatArray.getFloat(0);
. পরামিতি
স্থানাঙ্ক | সমাধানের জন্য স্কেলারের স্থানাঙ্ক |
---|
রিটার্নস
- যে স্কেলার মান
সর্বজনীন বিমূর্ত NdArraySequence < ByteNdArray > স্কেলার ()
এই অ্যারের সমস্ত স্কেলারের একটি ক্রম দেখায়।
এটি কল elements(shape().numDimensions() - 1)
রিটার্নস
- একটি
NdArray
ক্রম
সর্বজনীন বিমূর্ত ByteNdArray setByte (বাইটের মান, দীর্ঘ... স্থানাঙ্ক)
প্রদত্ত স্থানাঙ্কে পাওয়া স্কেলারের বাইট মান নির্ধারণ করে।
স্কেলার এলিমেন্ট অ্যাক্সেস করতে, প্রদত্ত স্থানাঙ্কের সংখ্যা অবশ্যই এই অ্যারের মাত্রার সংখ্যার সমান হতে হবে (অর্থাৎ এর র্যাঙ্ক)। যেমন:
ByteNdArray matrix = NdArrays.ofBytes(shape(2, 2)); // matrix rank = 2
matrix.setByte(10, 0, 1); // succeeds
matrix.setByte(10, 0); // throws IllegalRankException
ByteNdArray scalar = matrix.get(0, 1); // scalar rank = 0
scalar.setByte(10); // succeeds
পরামিতি
মান | বরাদ্দ করার মান |
---|---|
স্থানাঙ্ক | বরাদ্দ করার জন্য স্কেলারের স্থানাঙ্ক |
রিটার্নস
- এই অ্যারে
নিক্ষেপ করে
IndexOutOfBoundsException | যদি কিছু স্থানাঙ্ক তাদের নিজ নিজ মাত্রার সীমার বাইরে থাকে |
---|---|
অবৈধ র্যাঙ্ক ব্যতিক্রম | যদি স্থানাঙ্কের সংখ্যা একটি স্কেলার উপাদান অ্যাক্সেস করার জন্য যথেষ্ট না হয় |
পাবলিক বিমূর্ত ByteNdArray স্লাইস ( সূচক... সূচক)
প্রদত্ত সূচক নির্বাচকদের এক বা একাধিক মাত্রা ম্যাপ করে এই অ্যারের একটি বহুমাত্রিক দৃশ্য (বা স্লাইস) তৈরি করে।
স্লাইসগুলি এর যেকোন অক্ষে একটি N-মাত্রিক বিন্যাস অতিক্রম করতে এবং/অথবা শুধুমাত্র আগ্রহের উপাদানগুলিকে ফিল্টার করতে দেয়। উদাহরণস্বরূপ, [x, y]
অক্ষের একটি প্রদত্ত ম্যাট্রিক্সের জন্য, সমস্ত x
এর জন্য y=0
এ উপাদানগুলিকে পুনরাবৃত্তি করা সম্ভব।
প্রত্যাবর্তিত স্লাইসে প্রয়োগ করা যেকোনো পরিবর্তন এই অ্যারের ডেটাকেও প্রভাবিত করে, কারণ এতে কোনো অনুলিপি জড়িত নেই।
ব্যবহারের উদাহরণ:
FloatNdArray matrix3d = NdArrays.ofFloats(shape(3, 2, 4)); // with [x, y, z] axes
// Iterates elements on the x axis by preserving only the 3rd value on the z axis,
// (i.e. [x, y, 2])
matrix3d.slice(all(), all(), at(2)).elements(0).forEach(m -> {
assertEquals(shape(2), m); // y=2, z=0 (scalar)
);
// Creates a slice that contains only the last element of the y axis and elements with an
// odd `z` coordinate.
FloatNdArray slice = matrix3d.slice(all(), at(1), odd());
assertEquals(shape(3, 2), slice.shape()); // x=3, y=0 (scalar), z=2 (odd coordinates)
// Iterates backward the elements on the x axis
matrix3d.slice(flip()).elements(0).forEach(m -> {
assertEquals(shape(2, 4), m); // y=2, z=4
});
}
পরামিতি
সূচক | প্রতি মাত্রা সূচক নির্বাচক, এই অ্যারের মাত্রা 0 থেকে শুরু করে। |
---|
রিটার্নস
- সূচক নির্বাচনের ফলে উপাদান