Vendite simulate di OJ
Questo set di dati è derivato dal set di dati OJ di Dominick e include dati simulati aggiuntivi per eseguire il training simultaneo di migliaia di modelli in Azure Machine Learning.
Nota
Microsoft fornisce i set di dati aperti di Azure così come sono e non fornisce né garanzie, esplicite o implicite, né specifica alcuna condizione in relazione all'uso dei set di dati. Nella misura consentita dalla legge locale, Microsoft declina tutte le responsabilità per eventuali danni o perdite, incluse dirette, consequenziali, speciali, indirette, accidentali o irreversibili, risultanti dall'uso dei set di dati.
Questo set di dati viene fornito in conformità con le condizioni originali in base alle quali Microsoft ha ricevuto i dati di origine. Il set di dati potrebbe includere dati provenienti da Microsoft.
I dati contengono le vendite settimanali di succo d'arancia per 121 settimane. Sono stati inclusi 3.991 negozi e tre marche di succo d'arancia per ogni negozio, in modo da poter eseguire il training di 11.973 modelli.
Visualizzare la descrizione del set di dati originale o scaricare il set di dati.
Colonne
Nome | Tipo di dati | Unica | Valori (esempio) | Descrizione |
---|---|---|---|---|
Annuncio | int | 1 | Valore che indica se ci sono stati annunci per quel succo d'arancia durante la settimana 0: Nessuna pubblicità 1: Annuncio | |
Marchio | string | dominicks tropicana | Marca di succo di arancia | |
Price | double | 2.6 2.09 | Prezzo del succo di arancia (in USD) | |
Quantità | int | 10939 11638 | Quantità di succo di arancia venduta per la settimana specifica | |
Ricavi | double | 38438.4 36036.0 | Ricavi dalle vendite di succo di arancia per la settimana specifica (in USD) | |
Punto vendita | int | 2658 1396 | Numero del punto vendita in cui è stato venduto il succo di arancia | |
WeekStarting | timestamp | 09-08-1990 00:00:00 20-02-1992 00:00:00 | Data che indica la settimana a cui sono correlate le vendite |
Anteprima
WeekStarting | Punto vendita | Marchio | Quantità | Annuncio | Price | Ricavi |
---|---|---|---|---|---|---|
01/10/1992 12:00:00 | 3571 | minute.maid | 13247 | 1 | 2.42 | 32057.74 |
01/10/1992 12:00:00 | 2999 | minute.maid | 18461 | 1 | 2.69 | 49660.09 |
01/10/1992 12:00:00 | 1198 | minute.maid | 13222 | 1 | 2.64 | 34906.08 |
01/10/1992 12:00:00 | 3916 | minute.maid | 12923 | 1 | 2.45 | 31661.35 |
01/10/1992 12:00:00 | 1688 | minute.maid | 9380 | 1 | 2.46 | 23074.8 |
01/10/1992 12:00:00 | 1040 | minute.maid | 18841 | 1 | 2.31 | 43522.71 |
01/10/1992 12:00:00 | 1938 | minute.maid | 14202 | 1 | 2.19 | 31102.38 |
01/10/1992 12:00:00 | 2405 | minute.maid | 16326 | 1 | 2.05 | 33468.3 |
01/10/1992 12:00:00 | 1972 | minute.maid | 16380 | 1 | 2.12 | 34725.6 |
Accesso ai dati
Azure Notebooks
from azureml.core.workspace import Workspace
ws = Workspace.from_config()
datastore = ws.get_default_datastore()
from azureml.opendatasets import OjSalesSimulated
Leggere i dati dal set di dati aperti di Azure
# 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)
Caricare i singoli set di dati nell'archivio BLOB
I dati vengono caricati nel BLOB e viene creato il FileDataset da questa cartella di file csv.
target_path = 'oj_sales_data'
datastore.upload(src_dir = oj_sales_path,
target_path = target_path,
overwrite = True,
show_progress = True)
Creare il set di dati del file
È necessario definire il percorso dei dati per creare il FileDataset.
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)
Registrare il set di dati del file nell'area di lavoro
Si vuole registrare il set di dati nell'area di lavoro in modo da poterlo chiamare come input nella pipeline per la previsione.
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())
Passaggi successivi
Visualizzare il resto dei set di dati nel catalogo dei set di dati aperti.