recpack.datasets.Dataset
- class recpack.datasets.Dataset(path: str = 'data', filename: Optional[str] = None, use_default_filters=True)
Represents a collaborative filtering dataset, containing users who interacted in some way with a set of items.
Every Dataset has a set of preprocessing defaults, i.e. filters that are commonly applied to the dataset before use in recommendation algorithms. These can be disabled and a different set of filters can be applied.
A Dataset is transformed into an InteractionMatrix
- Parameters
path (str, optional) – The path to the data directory. Defaults to data
filename (str, optional) – Name of the file, if no name is provided the dataset default will be used if known. If the dataset does not have a default filename, a ValueError will be raised.
use_default_filters (bool, optional) – Should a default set of filters be initialised? Defaults to True
Methods
add_filter
(_filter[, index])Add a filter to be applied when loading the data.
fetch_dataset
([force])Check if dataset is present, if not download
load
()Loads data into an InteractionMatrix object.
Attributes
Default filename that will be used if it is not specified by the user.
Name of the column in the DataFrame with item identifiers
Name of the column in the DataFrame that contains time of interaction in seconds since epoch.
Name of the column in the DataFrame with user identifiers
The fully classified path to the file from which dataset will be loaded.
- DEFAULT_FILENAME = None
Default filename that will be used if it is not specified by the user.
- ITEM_IX = None
Name of the column in the DataFrame with item identifiers
- TIMESTAMP_IX = None
Name of the column in the DataFrame that contains time of interaction in seconds since epoch.
- USER_IX = None
Name of the column in the DataFrame with user identifiers
- add_filter(_filter: recpack.preprocessing.filters.Filter, index=None)
Add a filter to be applied when loading the data.
If the index is specified, the filter is inserted at the specified index. Otherwise it is appended.
- Parameters
_filter (Filter) – Filter to be applied to the loaded DataFrame processing to interaction matrix.
index (int) – The index to insert the filter at, None will append the filter. Defaults to None
- fetch_dataset(force=False)
Check if dataset is present, if not download
- Parameters
force (bool, optional) – If True, dataset will be downloaded, even if the file already exists. Defaults to False.
- property file_path
The fully classified path to the file from which dataset will be loaded.
- load() recpack.matrix.interaction_matrix.InteractionMatrix
Loads data into an InteractionMatrix object.
Data is loaded into a DataFrame using the _load_dataframe function. Resulting DataFrame is parsed into an InteractionMatrix object. During parsing the filters are applied in order.
- Returns
The resulting InteractionMatrix
- Return type