Acquire / file · All operations

Read a machine-learning data file

A variant of Read another file format

Read training data and numeric arrays from formats such as ARFF, TFRecord, NumPy and HDF5.

Status

In arcform

Not built yet

arcform does not do this yet. Its place on the roadmap

What other tools call it

Meridian's classification; an independent blind rating agreed on 95.7% of 324 rows (variant, version 3).

KNIME Analytics Platform (1)
mlpack (5)
  • ARFFread 2026-09-27

    Load mixed categorical and numeric data from .arff; loading only

  • ArmaBinread 2026-09-27

    Load or save numeric data in Armadillo's packed arma_binary format

  • CoordASCIIread 2026-09-27

    Load or save a sparse matrix as a coordinate list in text

  • HDF5read 2026-09-27

    Load or save numeric data as HDF5; needs Armadillo built with HDF5 support

  • RawBinaryread 2026-09-27

    Load or save packed binary numbers with no header or size information

RapidMiner Studio (2)
  • Read ARFFread 2026-09-27

    Read a Weka ARFF file into a table

  • Read C4.5read 2026-09-27

    Read data and column metadata from C4.5 .names and .data files

Talend (1)
VisiData (3)
Yggdrasil Decision Forests (5)

Background

An Attribute-Relation File Format (ARFF) file is a text file that describes a list of instances sharing a set of attributes.[1] The .npy format is the standard binary file format in NumPy for persisting a single arbitrary NumPy array on disk.[2] The TFRecord format is a simple format for storing a sequence of binary records.[3]

When to use it

In an ARFF file, a missing value is represented by a single question mark.[1] In a sparse ARFF file, omitted values are 0, not missing values, and an unknown value must still be written explicitly as a question mark.[1] When reading a sparse ARFF file, fill the omitted values with zero, never with NULL. (Meridian's view)

NumPy's load uses the pickle module for files that contain object arrays, and pickle is not secure against erroneous or maliciously constructed data.[4] NumPy's load sets allow_pickle to False by default.[4] Leave pickles switched off for any array file you did not write yourself. (Meridian's view)

The tf.train.Example message is a flexible message type that represents a {"string": value} mapping, designed for use with TensorFlow.[3] There is no requirement to use tf.train.Example in TFRecord files: any byte-string TensorFlow can decode, such as lines of text or encoded image data, can be stored in one.[3]

The method

An ARFF file has two sections: a header naming the relation and listing the attributes with their types, followed by the data.[1] In ARFF, the order in which the attributes are declared gives each attribute's column position in the data section.[1]

The first 6 bytes of a .npy file are a magic string, exactly \x93NUMPY.[2] A .npy file's header describes the array's data type, or dtype, whether its data is Fortran-contiguous, and its shape.[2] After the header, a .npy file holds the array's contiguous bytes, or a Python pickle of the array when its dtype contains Python objects.[2] The .npz format is a zip file containing multiple .npy files, one for each array.[2]

Hierarchical Data Format (HDF) is a set of file formats, HDF4 and HDF5, designed to store and organise large amounts of data.[5] HDF was originally developed at the U.S. National Center for Supercomputing Applications, and is supported by The HDF Group, a non-profit corporation.[5] HDF5 has two major types of object: datasets, which are typed multidimensional arrays, and groups, which are containers that can hold datasets and other groups.[5] Before reading an HDF5 file into a table, list its groups and datasets, and pick the dataset that holds the rows you want. (Meridian's view)