OJ Sales Simulated

Ez az adatkészlet a Dominick OJ-adatkészletéből származik, és további szimulált adatokat tartalmaz, hogy egyszerre több ezer modellt tanítsunk be az Azure Machine Tanulás.

Megjegyzés:

A Microsoft az Azure Open Datasets szolgáltatást "adott módon" biztosítja. A Microsoft nem vállal kifejezett vagy vélelmezett garanciát vagy feltételeket az adathalmazok Ön általi használatára vonatkozóan. A microsoft a helyi jogszabályok által megengedett mértékben kizár minden felelősséget az adathalmazok használatából eredő károkért vagy veszteségekért, beleértve a közvetlen, következményi, különleges, közvetett, incidenses vagy büntető jellegű károkat is.

Az adatkészletet a Microsoft forrásadataihoz tartozó eredeti feltételek szerint szolgáltatjuk. A készlet tartalmazhat Microsofttól származó adatokat.

Az adatok a narancslé 121 héten keresztüli heti értékesítését tartalmazzák. 3991 üzlet van benne, és üzletenként három márka narancslé, így 11 973 modell tanítható be.

Tekintse meg az eredeti adathalmaz leírását, vagy töltse le az adathalmazt.

Oszlopok

Név Adattípus Egyedi Values (sample) Leírás
Hirdetés egész 1 Érték, amely azt jelzi, hogy voltak-e hirdetések a narancslé a hét folyamán 0: Nincs hirdetés 1: Hirdetések
Márka sztring dominicks tropicana Narancslé márkája
Ár double 2.6 2.09 A narancslé ára (USD)
Mennyiség egész 10939 11638 Az adott héten eladott narancslé mennyisége
Bevétel double 38438.4 36036.0 A narancsléből származó bevétel az adott héten (USD)
Tárolás egész 2658 1396 Annak az üzletnek a száma, ahol a narancslevet eladták
WeekStarting timestamp 1990-08-09 00:00:00 1992-02-20 00:00:00 Az a dátum, mely azt jelzi, mely hétre vonatkoznak az értékesítések

Előnézet megtekintése

WeekStarting Tárolás Márka Mennyiség Hirdetés Ár Bevétel
1992.01.10. 12:00:00 3571 minute.maid 13247 1 2,42 32057.74
1992.01.10. 12:00:00 2999 minute.maid 18461 1 2.69 49660.09
1992.01.10. 12:00:00 1198 minute.maid 13222 1 2.64 34906.08
1992.01.10. 12:00:00 3916 minute.maid 12923 1 2.45 31661.35
1992.01.10. 12:00:00 1688 minute.maid 9380 1 2,46 23074.8
1992.01.10. 12:00:00 1040 minute.maid 18841 1 2.31 43522.71
1992.01.10. 12:00:00 1938 minute.maid 14202 1 2.19 31102.38
1992.01.10. 12:00:00 2405 minute.maid 16326 1 2.05 33468.3
1992.01.10. 12:00:00 1972 minute.maid 16380 1 2,12 34725.6

Az adatok elérése

Azure Notebooks

from azureml.core.workspace import Workspace
ws = Workspace.from_config()
datastore = ws.get_default_datastore()
from azureml.opendatasets import OjSalesSimulated

Adatok olvasása az Azure Open Datasetsből

# 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)

Az egyes adathalmazok feltöltése a Blob Storage-ba

Feltöltjük az adatokat a Blobba, és létrehozzuk a FileDatasetet a csv-fájlok mappájából.

target_path = 'oj_sales_data'

datastore.upload(src_dir = oj_sales_path,
                target_path = target_path,
                overwrite = True, 
                show_progress = True)

A fájladatkészlet létrehozása

Meg kell határoznunk az adatok elérési útját a FileDataset létrehozásához.

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)

A fájladatkészlet regisztrálása a munkaterületre

Regisztrálni szeretnénk az adathalmazt a munkaterületünkön, hogy a folyamat bemeneteként hívhassuk az előrejelzéshez.

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())

További lépések

Tekintse meg a többi adathalmazt az Open Datasets katalógusban.