Skip to content

numpy.linalg.norm() broken for multidimensional integer arrays #5626

Closed
@djrobust

Description

@djrobust
import numpy as np

a = np.array([[30, 12, 91],
              [18, 4, 13]], dtype='uint8')
b = a.astype('float')

print(np.linalg.norm(a, axis=1))
print(np.sqrt(np.diag(np.dot(a, a.T))))

print(np.linalg.norm(b, axis=1))
print(np.sqrt(np.diag(np.dot(b, b.T))))

print(np.version.version)
[ 19.10497317  15.90597372]
[ 10.44030666  15.90597343]
[ 96.56603958  22.56102835]
[ 96.56603958  22.56102835]
1.9.2

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions