max method
Maximum value of all elements or along a specific axis.
If axis is null, returns the maximum value as a scalar.
If axis is specified, returns an NDArray with the maximum computed along that axis.
Example:
var arr = NDArray([[1, 9, 3], [4, 2, 8]]);
// Max of all elements
print(arr.max()); // 9
// Max along axis 0 (columns)
var colMax = arr.max(axis: 0);
print(colMax.toFlatList()); // [4, 9, 8]
// Max along axis 1 (rows)
var rowMax = arr.max(axis: 1);
print(rowMax.toFlatList()); // [9, 8]
Implementation
dynamic max({int? axis}) {
if (axis == null) {
num? maxVal;
_iterateAll((value) {
final numVal = value as num;
if (maxVal == null || numVal > maxVal!) {
maxVal = numVal;
}
});
return maxVal ?? double.nan;
}
return _reduceAxis(axis, (values) {
num? maxVal;
for (var v in values) {
final numVal = v as num;
if (maxVal == null || numVal > maxVal) {
maxVal = numVal;
}
}
return maxVal ?? double.nan;
});
}