Symulowana sprzedaż OJ
Ten zestaw danych pochodzi z zestawu danych OJ Firmy Dominick i zawiera dodatkowe symulowane dane do jednoczesnego trenowania tysięcy modeli w usłudze Azure Machine Learning.
Uwaga
Firma Microsoft udostępnia zestawy danych Platformy Azure open na zasadzie "tak, jak to jest". Firma Microsoft nie udziela żadnych gwarancji, wyraźnych lub domniemanych, gwarancji ani warunków w odniesieniu do korzystania z zestawów danych. W zakresie dozwolonym zgodnie z prawem lokalnym firma Microsoft nie ponosi odpowiedzialności za wszelkie szkody lub straty, w tym bezpośrednie, wtórne, specjalne, pośrednie, przypadkowe lub karne wynikające z korzystania z zestawów danych.
Zestaw danych jest udostępniany zgodnie z pierwotnymi warunkami, na jakich firma Microsoft otrzymała dane źródłowe. Zestaw danych może zawierać dane pozyskane z firmy Microsoft.
Dane zawierają tygodniową sprzedaż soku pomarańczowego w ciągu 121 tygodni. Istnieje 3991 sklepów i trzy marki soku pomarańczowego na sklep, aby można było wytrenować 11 973 modele.
Wyświetl oryginalny opis zestawu danych lub pobierz zestaw danych.
Kolumny
Nazwisko | Typ danych | Unikatowe | Wartości (przykładowe) | opis |
---|---|---|---|---|
Reklama | int | 1 | Wartość wskazująca, czy były reklamy tego soku pomarańczowego w tygodniu 0: Brak anonsów 1: Reklamy | |
Marka | string | dominickstropana | Marka soku pomarańczowego | |
Cena | double | 2.6 2.09 | Cena soku pomarańczowego (w USD) | |
Ilość | int | 10939 11638 | Ilość soku pomarańczowego sprzedana w tym tygodniu | |
Przychód | double | 38438.4 36036.0 | Przychód ze sprzedaży soku pomarańczowego w tym tygodniu (w USD) | |
Przechowuj | int | 2658 1396 | Numer sklepu, w którym sprzedano sok pomarańczowy | |
Tydzień Rozpoczęcia | timestamp | 1990-08-09 00:00:00 1992-02-20 00:00:00 | Data wskazująca tydzień, z którym sprzedaż jest powiązana |
Podgląd
Tydzień Rozpoczęcia | Przechowuj | Marka | Ilość | Reklama | Cena | Przychód |
---|---|---|---|---|---|---|
10/1/1992 12:00:00 | 3571 | minute.maid | 13247 | 1 | 2,42 | 32057.74 |
10/1/1992 12:00:00 | 2999 | minute.maid | 18461 | 1 | 2.69 | 49660.09 |
10/1/1992 12:00:00 | 1198 | minute.maid | 13222 | 1 | 2.64 | 34906.08 |
10/1/1992 12:00:00 | 3916 | minute.maid | 12923 | 1 | 2.45 | 31661.35 |
10/1/1992 12:00:00 | 1688 | minute.maid | 9380 | 1 | 2,46 | 23074.8 |
10/1/1992 12:00:00 | 1040 | minute.maid | 18841 | 1 | 2.31 | 43522.71 |
10/1/1992 12:00:00 | 1938 | minute.maid | 14202 | 1 | 2.19 | 31102.38 |
10/1/1992 12:00:00 | 2405 | minute.maid | 16326 | 1 | 2.05 | 33468.3 |
10/1/1992 12:00:00 | 1972 | minute.maid | 16380 | 1 | 2,12 | 34725.6 |
Dostęp do danych
Azure Notebooks
from azureml.core.workspace import Workspace
ws = Workspace.from_config()
datastore = ws.get_default_datastore()
from azureml.opendatasets import OjSalesSimulated
Odczytywanie danych z usługi 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)
Przekazywanie poszczególnych zestawów danych do usługi Blob Storage
Przekażemy dane do obiektu blob i utworzymy zestaw FileDataset z tego folderu plików CSV.
target_path = 'oj_sales_data'
datastore.upload(src_dir = oj_sales_path,
target_path = target_path,
overwrite = True,
show_progress = True)
Tworzenie zestawu danych plików
Musimy zdefiniować ścieżkę danych, aby utworzyć zestaw 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)
Rejestrowanie zestawu danych pliku w obszarze roboczym
Chcemy zarejestrować zestaw danych w naszym obszarze roboczym, abyśmy mogli wywołać go jako dane wejściowe w naszym potoku na potrzeby prognozowania.
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())
Następne kroki
Wyświetl pozostałe zestawy danych w katalogu Open Datasets (Otwieranie zestawów danych).