OJ Satış Simülasyonu

Bu veri kümesi, Dominick'in OJ veri kümesinden türetilmiştir ve Azure Machine Learning'de binlerce modeli aynı anda eğitmek için ek simülasyon verileri içerir.

Dekont

Microsoft, Azure Open Datasets'i "olduğu gibi" sağlar. Microsoft, veri kümelerini kullanımınızla ilgili olarak açık veya zımni hiçbir garanti veya koşul sağlamaz. Yerel yasalarınız kapsamında izin verilen ölçüde, Microsoft veri kümelerini kullanımınızdan kaynaklanan doğrudan, sonuçsal, özel, dolaylı, arızi veya cezai dahil olmak üzere tüm zarar veya kayıplar için tüm sorumluluğu kabul etmez.

Bu veri kümesi Microsoft’un kaynak verileri aldığı orijinal hükümler kapsamında sağlanır. Veri kümesi Microsoft’tan alınan verileri içerebilir.

Veriler, 121 haftadan fazla haftalık portakal suyu satışını içerir. 3.991 mağaza ve mağaza başına üç marka portakal suyu vardır, böylece 11.973 model eğitilebilir.

Özgün veri kümesi açıklamasını görüntüleyin veya veri kümesini indirin.

Sütunlar

Adı Veri türü Benzersiz Değerler (örnek) Açıklama
Reklam int 1 Bu portakal suyu için hafta boyunca reklam olup olmadığını gösteren değer 0: Reklam Yok 1: Reklamlar
Marka Dize dominikler tropicanası Portakal suyunun markası
Fiyat çift 2.6 2.09 Portakal suyunun fiyatı (ABD doları cinsinde)
Miktar int 10939 11638 Belirtilen hafta boyunca satılan portakal suyu miktarı
Gelir çift 38438.4 36036.0 Belirtilen hafta içinde portakal suyundan elde edilen gelir (ABD doları cinsinde)
Store int 2658 1396 Portakal suyunun satıldığı mağazanın numarası
WeekStarting timestamp 1990-08-09 00:00:00 1992-02-20 00:00:00 Satışların hangi haftaya ait olduğunu belirten tarih

Önizleme

WeekStarting Store Marka Miktar Reklam Fiyat Gelir
1/10/1992 12:00:00 3571 minute.maid 13247 1 2,42 32057.74
1/10/1992 12:00:00 2999 minute.maid 18461 1 2.69 49660.09
1/10/1992 12:00:00 1198 minute.maid 13222 1 2.64 34906.08
1/10/1992 12:00:00 3916 minute.maid 12923 1 2.45 31661.35
1/10/1992 12:00:00 1688 minute.maid 9380 1 2,46 23074.8
1/10/1992 12:00:00 1040 minute.maid 18841 1 2.31 43522.71
1/10/1992 12:00:00 1938 minute.maid 14202 1 2.19 31102.38
1/10/1992 12:00:00 2405 minute.maid 16326 1 2.05 33468.3
1/10/1992 12:00:00 1972 minute.maid 16380 1 2,12 34725.6

Veri erişimi

Azure Notebooks

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

Azure Açık Veri Kümelerinden veri okuma

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

Tek tek veri kümelerini Blob Depolama'a yükleme

Verileri Blob'a yükleriz ve bu csv dosyaları klasöründen FileDataset'i oluştururuz.

target_path = 'oj_sales_data'

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

Dosya veri kümesini oluşturma

FileDataset'i oluşturmak için verilerin yolunu tanımlamamız gerekir.

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)

Dosya veri kümesini çalışma alanına kaydetme

Tahmin için işlem hattımıza giriş olarak çağırabilmek için veri kümesini çalışma alanımıza kaydetmek istiyoruz.

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

Sonraki adımlar

Açık Veri Kümeleri kataloğundaki diğer veri kümelerini görüntüleyin.