Skip to content

aplbrain/npyjs

Repository files navigation

npy.js

Read .npy files directly in JS

GitHub Workflow Status

Installation

Include npy.js in your project directly, or:

yarn add npyjs
# npm i npyjs

Import

import npyjs from "npyjs";

Usage

  • Create a new npyjs object.
let n = new npyjs();
  • This object can now be used load .npy files. Arrays can be returned via a JavaScript callback, so usage looks like this:
n.load("my-array.npy", (array, shape) => {
    // `array` is a one-dimensional array of the raw data
    // `shape` is a one-dimensional array that holds a numpy-style shape.
    console.log(
        `You loaded an array with ${array.length} elements and ${shape.length} dimensions.`
    );
});
  • You can also use this library promise-style using either .then or async await:
n.load("test.npy").then((res) => {
    // res has { data, shape, dtype } members.
});
const npyArray = await n.load("test.npy");

Accessing multidimensional array elements

  • You can conveniently access multidimensional array elements using the 'ndarray' library:
import ndarray from "ndarray";
const npyArray = ndarray(data, shape);
npyArray.get(10, 15)

Unless otherwise specified, all code inside of this repository is covered under the license in LICENSE.

Please report bugs or contribute pull-requests on GitHub.


Made with ♥ at JHU APL