Gesimuleerde verkoop IN PB
Deze gegevensset is afgeleid van de PB-gegevensset van Dominick en bevat extra gesimuleerde gegevens om tegelijkertijd duizenden modellen op Azure Machine Learning te trainen.
Notitie
Microsoft biedt Azure Open Datasets op basis van 'zoals is'. Microsoft geeft geen garanties, uitdrukkelijk of impliciet, garanties of voorwaarden met betrekking tot uw gebruik van de gegevenssets. Voor zover toegestaan volgens uw lokale wetgeving, wijst Microsoft alle aansprakelijkheid af voor eventuele schade of verliezen, waaronder directe, gevolgschade, speciale, indirecte, incidentele of strafbare gegevenssets, die het gevolg zijn van uw gebruik van de gegevenssets.
Deze gegevensset wordt geleverd onder de oorspronkelijke voorwaarden dat Microsoft de brongegevens heeft ontvangen. De gegevensset kan gegevens bevatten die afkomstig zijn van Microsoft.
De gegevens bevatten wekelijkse verkoop van sinaasappelsap gedurende 121 weken. Er zijn 3991 winkels inbegrepen en drie merken sinaasappelsap per winkel, zodat 11.973 modellen kunnen worden getraind.
Bekijk de oorspronkelijke beschrijving van de gegevensset of download de gegevensset.
Kolommen
Naam | Gegevenstype | Uniek | Waarden (voorbeeld) | Beschrijving |
---|---|---|---|---|
Advertentie | int | 1 | Waarde die aangeeft of er advertenties waren voor dat sinaasappelsap in de week 0: Geen advertenties 1: Advertenties | |
Merk | tekenreeks | dominickstropana | Merk van sinaasappelsap | |
Prijs | dubbel | 2.6 2.09 | Prijs van de sinaasappelsap (in USD) | |
Hoeveelheid | int | 10939 11638 | Hoeveelheid sinaasappelsap die in die week werd verkocht | |
Omzet | dubbel | 38438.4 36036.0 | Omzet uit verkoop van sinaasappelsap voor die week (in USD) | |
Opslaan | int | 2658 1396 | Nummer van de winkel waarin de sinaasappelsap werd verkocht | |
WeekStarting | timestamp | 1990-08-09 00:00:00 1992-02-20 00:00:00 | Datum die aangeeft op welke week de omzet betrekking heeft |
Preview uitvoeren
WeekStarting | Opslaan | Merk | Hoeveelheid | Advertentie | Prijs | Omzet |
---|---|---|---|---|---|---|
10-1-1992 12:00:00 uur | 3571 | minute.maid | 13247 | 1 | 2,42 | 32057.74 |
10-1-1992 12:00:00 uur | 2999 | minute.maid | 18461 | 1 | 2.69 | 49660.09 |
10-1-1992 12:00:00 uur | 1198 | minute.maid | 13222 | 1 | 2.64 | 34906.08 |
10-1-1992 12:00:00 uur | 3916 | minute.maid | 12923 | 1 | 2.45 | 31661.35 |
10-1-1992 12:00:00 uur | 1688 | minute.maid | 9380 | 1 | 2,46 | 23074.8 |
10-1-1992 12:00:00 uur | 1040 | minute.maid | 18841 | 1 | 2.31 | 43522.71 |
10-1-1992 12:00:00 uur | 1938 | minute.maid | 14202 | 1 | 2.19 | 31102.38 |
10-1-1992 12:00:00 uur | 2405 | minute.maid | 16326 | 1 | 2.05 | 33468.3 |
10-1-1992 12:00:00 uur | 1972 | minute.maid | 16380 | 1 | 2.12 | 34725.6 |
Toegang tot gegevens
Azure Notebooks
from azureml.core.workspace import Workspace
ws = Workspace.from_config()
datastore = ws.get_default_datastore()
from azureml.opendatasets import OjSalesSimulated
Gegevens lezen uit Azure Open Datasets
# Create a Data Directory in local path
import os
oj_sales_path = "oj_sales_data"
if not os.path.exists(oj_sales_path):
os.mkdir(oj_sales_path)
# Pull all of the data
oj_sales_files = OjSalesSimulated.get_file_dataset()
# or pull a subset of the data
oj_sales_files = OjSalesSimulated.get_file_dataset(num_files=10)
oj_sales_files.download(oj_sales_path, overwrite=True)
De afzonderlijke gegevenssets uploaden naar Blob Storage
We uploaden de gegevens naar Blob en maken de FileDataset vanuit deze map met CSV-bestanden.
target_path = 'oj_sales_data'
datastore.upload(src_dir = oj_sales_path,
target_path = target_path,
overwrite = True,
show_progress = True)
De bestandsgegevensset maken
We moeten het pad van de gegevens definiƫren om de FileDataset te maken.
from azureml.core.dataset import Dataset
ds_name = 'oj_data'
path_on_datastore = datastore.path(target_path + '/')
input_ds = Dataset.File.from_files(path=path_on_datastore, validate=False)
De bestandsgegevensset registreren bij de werkruimte
We willen de gegevensset registreren bij onze werkruimte, zodat we deze kunnen aanroepen als invoer in onze pijplijn voor prognose.
registered_ds = input_ds.register(ws, ds_name, create_new_version=True)
named_ds = registered_ds.as_named_input(ds_name)
Azure Databricks
# This is a package in preview.
# You need to pip install azureml-opendatasets in Databricks cluster. https://learn.microsoft.com/azure/data-explorer/connect-from-databricks#install-the-python-library-on-your-azure-databricks-cluster
# Download or mount OJ Sales raw files Azure Machine Learning file datasets.
# This works only for Linux based compute. See https://learn.microsoft.com/azure/machine-learning/service/how-to-create-register-datasets to learn more about datasets.
from azureml.opendatasets import OjSalesSimulated
ojss_file = OjSalesSimulated.get_file_dataset()
ojss_file
ojss_file.to_path()
# Download files to local storage
import os
import tempfile
mount_point = tempfile.mkdtemp()
ojss_file.download(mount_point, overwrite=True)
# Mount files. Useful when training job will run on a remote compute.
import gzip
import struct
import pandas as pd
import numpy as np
# load compressed OJ Sales Simulated gz files and return numpy arrays
def load_data(filename, label=False):
with gzip.open(filename) as gz:
gz.read(4)
n_items = struct.unpack('>I', gz.read(4))
if not label:
n_rows = struct.unpack('>I', gz.read(4))[0]
n_cols = struct.unpack('>I', gz.read(4))[0]
res = np.frombuffer(gz.read(n_items[0] * n_rows * n_cols), dtype=np.uint8)
res = res.reshape(n_items[0], n_rows * n_cols)
else:
res = np.frombuffer(gz.read(n_items[0]), dtype=np.uint8)
res = res.reshape(n_items[0], 1)
return pd.DataFrame(res)
import sys
mount_point = tempfile.mkdtemp()
print(mount_point)
print(os.path.exists(mount_point))
print(os.listdir(mount_point))
if sys.platform == 'linux':
print("start mounting....")
with ojss_file.mount(mount_point):
print(os.listdir(mount_point))
train_images_df = load_data(os.path.join(mount_point, 'train-tabular-oj-ubyte.gz'))
print(train_images_df.info())
Volgende stappen
Bekijk de rest van de gegevenssets in de catalogus Open Datasets.