mltable Pakiet
Zawiera funkcje interakcji z istniejącymi i tworzenia nowych plików MLTable.
Pakiet mltable umożliwia ładowanie, przekształcanie i analizowanie danych w dowolnym środowisku języka Python, w tym notesów Jupyter Notebook lub ulubionego środowiska IDE języka Python.
Pakiety
| tests |
Zawiera funkcje interakcji z istniejącymi i tworzenia nowych plików MLTable. Pakiet mltable umożliwia ładowanie, przekształcanie i analizowanie danych w dowolnym środowisku języka Python, w tym notesów Jupyter Notebook lub ulubionego środowiska IDE języka Python. |
Moduły
| mltable |
Zawiera funkcje do tworzenia obiektów MLTable i interakcji z nimi |
Klasy
| DataType |
Klasa pomocnika do obsługi prawidłowego manipulowania obsługiwanymi typami kolumn (int, bool, string itp.). Obecnie używane z MLTable.convert_column_types(...) i from_delimited_files(...) do określania typów, do których mają być konwertowane kolumny. Różne typy są wybierane z DataType.from_(...)*Metody. |
| MLTable |
Reprezentuje tabelę MLTable. Tabela MLTable definiuje serię niezmienianych, niezmiennych operacji ładowania danych ze źródła danych. Dane nie są ładowane ze źródła, dopóki tabela MLTable nie zostanie poproszona o dostarczenie danych. Zainicjuj nową tabelę MLTable. Ten konstruktor nie powinien być wywoływany bezpośrednio. Tabela MLTable ma zostać utworzona przy użyciu polecenia load. |
Wyliczenia
| MLTableFileEncoding |
Definiuje opcje przetwarzania kodowania podczas odczytywania danych z plików w celu utworzenia tabeli MLTable. Te wartości wyliczenia są używane w klasie MLTable. |
| MLTableHeaders |
Definiuje opcje przetwarzania nagłówków kolumn podczas odczytywania danych z plików w celu utworzenia tabeli MLTable. Te wartości wyliczenia są używane w klasie MLTable. |
Funkcje
from_delimited_files
Tworzy tabelę MLTable na podstawie danej listy rozdzielonych plików.
from_delimited_files(paths, header='all_files_same_headers', delimiter=',', support_multi_line=False, empty_as_string=False, encoding='utf8', include_path_column=False, infer_column_types=True)
Parametry
| Nazwa | Opis |
|---|---|
|
paths
Wymagane
|
Ścieżki obsługują pliki lub foldery ze ścieżkami lokalnymi lub w chmurze. Zakłada się, że względne lokalne ścieżki plików są względne względem bieżącego katalogu roboczego. Jeśli katalog nadrzędny, do którego jest względna ścieżka pliku lokalnego, nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku. |
|
header
Wymagane
|
Sposób obsługi nagłówków kolumn podczas odczytywania z plików. Opcje określone przy użyciu wyliczenia MLTableHeaders. Obsługiwane nagłówki to "no_header", "from_first_file", "all_files_different_headers" i "all_files_same_headers". |
|
delimiter
Wymagane
|
separator używany do dzielenia kolumn |
|
support_multi_line
Wymagane
|
Jeśli wartość False, wszystkie podziały wierszy, w tym te w cytowanych wartościach pól, zostaną zinterpretowane jako podział rekordu. Odczytywanie danych w ten sposób jest szybsze i bardziej zoptymalizowane pod kątem równoległego wykonywania na wielu rdzeniach procesora. Jednak może to spowodować dyskretne generowanie większej liczby rekordów z nieprawidłowo wyrównanymi wartościami pól. Należy ustawić wartość True, gdy rozdzielane pliki są znane jako zawierające cudzysłów wierszy. Biorąc pod uwagę ten plik CSV jako przykład, dane będą odczytywane inaczej na podstawie support_multi_line. A,B,C1,B1,C1 A2,"B 2",C2
|
|
empty_as_string
Wymagane
|
Sposób obsługi pustych pól. Jeśli wartość True odczytuje puste pola jako puste ciągi, inne odczytuje jako wartości null. Jeśli wartość True i kolumna zawiera dane daty/godziny lub liczbowe, puste pola nadal są odczytywane jako wartości null. |
|
encoding
Wymagane
|
Określa kodowanie pliku przy użyciu wyliczenia MLTableFileEncoding. Obsługiwane kodowanie to:
|
|
include_path_column
Wymagane
|
Zachowaj informacje o ścieżce jako kolumnę w tabeli MLTable, jest przydatne podczas odczytywania wielu plików i chcesz wiedzieć, z którego pliku pochodzi określony rekord, lub zachować przydatne informacje, które mogą być przechowywane w ścieżce pliku. |
|
infer_column_types
Wymagane
|
Jeśli wartość True, automatycznie wywnioskuje wszystkie typy kolumn. Jeśli wartość False, pozostawia kolumny jako ciągi. Jeśli słownik reprezentuje kolumny, których typy mają być ustawione na podane typy (ze wszystkimi innymi kolumnami, które są wnioskowane). Słownik może zawierać klucz o nazwie sample_size zamapowany na dodatnią liczbę całkowitą reprezentującą liczbę wierszy używanych do wnioskowania typów kolumn. Słownik może również zawierać klucz o nazwie "column_type_overrides". Każdy klucz w słowniku jest ciągiem reprezentującym nazwę kolumny lub krotką ciągów reprezentujących grupę nazw kolumn. Każda wartość to ciąg (jeden z wartości logicznych, "string", "float" lub "int") lub DataType. mltable. DataType.to_stream() nie jest obsługiwana. Jeśli podano pusty słownik, przyjmuje się, że ma wartość True. Wartość domyślna to True. Przykład formatowania infer_column_types.
|
Zwraca
| Typ | Opis |
|---|---|
|
Tabela ML |
Uwagi
Musi istnieć prawidłowy ciąg ścieżek.
# load mltable from local delimited file
from mltable import from_delimited_files
paths = [{"file": "./samples/mltable_sample/sample_data.csv"}]
mltable = from_delimited_files(paths)
from_delta_lake
Tworzy obiekt MLTable do odczytu w plikach Parquet z tabeli delta lake.
from_delta_lake(delta_table_uri, timestamp_as_of=None, version_as_of=None, include_path_column=False)
Parametry
| Nazwa | Opis |
|---|---|
|
delta_table_uri
Wymagane
|
Identyfikator URI wskazujący katalog tabeli delty zawierający pliki delta lake parquet do odczytu. Obsługiwane typy identyfikatorów URI to: identyfikator URI ścieżki lokalnej, identyfikator URI magazynu magazynu, identyfikator URI magazynu danych z długim formularzem lub identyfikator URI zasobu danych. |
|
timestamp_as_of
Wymagane
|
ciąg daty/godziny w formacie RFC-3339/ISO-8601 do odczytu w pasujących plikach parquet z określonego punktu w czasie. ex) "2022-10-01T00:00:00Z", "2022-10-01T00:00:00+08:00", "2022-10-01T01:30:00-08:00" |
|
version_as_of
Wymagane
|
Wersja całkowita do odczytu w określonej wersji plików parquet. |
|
include_path_column
Wymagane
|
Zachowaj informacje o ścieżce jako kolumnę, przydatne podczas odczytywania wielu plików i chcesz wiedzieć, z którego pliku pochodzi określony rekord, lub zachować przydatne informacje, które mogą być przechowywane w ścieżce pliku. |
Zwraca
| Typ | Opis |
|---|---|
|
Wystąpienie tabeli MLTable |
Uwagi
from_delta_lake tworzy obiekt MLTable, który definiuje operacje ładowania danych z folderu delta lake do reprezentacji tabelarycznej.
Aby dane były dostępne w usłudze Azure Machine Learning, ścieżka musi wskazywać katalog tabel różnicowych i pliki usługi Delta Lake, do których się odwołujesz, muszą być dostępne dla usług AzureML lub za publicznymi adresami URL sieci Web.
from_delta_lake obsługuje odczytywanie danych usługi Delta Lake z identyfikatora URI wskazującego na: ścieżkę lokalną, obiekt blob, usługę ADLS Gen1 i usługę ADLS Gen2
Użytkownicy mogą odczytywać i materializować dane przez wywołanie metody to_pandas_dataframe() w zwróconej tabeli MLTable
# create an MLTable object from a delta lake using timestamp versioning and materialize the data
from mltable import from_delta_lake
mltable_ts = from_delta_lake(delta_table_uri="./data/delta-01", timestamp_as_of="2021-05-24T00:00:00Z")
pd = mltable_ts.to_pandas_dataframe()
# create an MLTable object from a delta lake using integer versioning and materialize the data
from mltable import from_delta_lake
mltable_version = from_delta_lake(delta_table_uri="./data/delta-02", version_as_of=1)
pd = mltable_version.to_pandas_dataframe()
from_json_lines_files
Utwórz tabelę MLTable na podstawie podanej listy ścieżek plików JSON.
from_json_lines_files(paths, invalid_lines='error', encoding='utf8', include_path_column=False)
Parametry
| Nazwa | Opis |
|---|---|
|
paths
Wymagane
|
Ścieżki obsługują pliki lub foldery ze ścieżkami lokalnymi lub w chmurze. Zakłada się, że względne lokalne ścieżki plików są względne względem bieżącego katalogu roboczego. Jeśli katalog nadrzędny, do którego jest względna ścieżka pliku lokalnego, nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku. |
|
invalid_lines
Wymagane
|
Sposób obsługi wierszy, które są nieprawidłowe w formacie JSON, może być "drop" lub "error". Jeśli "upuść" nieprawidłowe wiersze zostaną porzucone, zostanie zgłoszony błąd else. |
|
encoding
Wymagane
|
Określa kodowanie pliku przy użyciu wyliczenia MLTableFileEncoding. Obsługiwane kodowanie plików:
|
|
include_path_column
Wymagane
|
Zachowaj informacje o ścieżce jako kolumnę, przydatne podczas odczytywania wielu plików i chcesz wiedzieć, z którego pliku pochodzi określony rekord, lub zachować przydatne informacje, które mogą być przechowywane w ścieżce pliku. |
Zwraca
| Typ | Opis |
|---|---|
|
Tabela ML |
Uwagi
Musi istnieć prawidłowy słownik ścieżek
# load mltable from local JSON paths
from mltable import from_json_lines_files
paths = [{'file': './samples/mltable_sample/sample_data.jsonl'}]
mltable = from_json_lines_files(paths)
from_parquet_files
Utwórz tabelę MLTable na podstawie podanej listy plików parquet.
from_parquet_files(paths, include_path_column=False)
Parametry
| Nazwa | Opis |
|---|---|
|
paths
Wymagane
|
Ścieżki obsługują pliki lub foldery ze ścieżkami lokalnymi lub w chmurze. Zakłada się, że względne lokalne ścieżki plików są względne względem bieżącego katalogu roboczego. Jeśli katalog nadrzędny, do którego jest względna ścieżka pliku lokalnego, nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku. |
|
include_path_column
Wymagane
|
Zachowaj informacje o ścieżce jako kolumnę, przydatne podczas odczytywania wielu plików i chcesz wiedzieć, z którego pliku pochodzi określony rekord, lub zachować przydatne informacje, które mogą być przechowywane w ścieżce pliku. |
Zwraca
| Typ | Opis |
|---|---|
|
Wystąpienie tabeli MLTable |
Uwagi
Musi istnieć prawidłowy słownik ścieżek
# load mltable from local parquet paths
from mltable import from_parquet_files
paths = [{'file': './samples/mltable_sample/sample.parquet'}]
mltable = from_parquet_files(paths)
from_paths
Utwórz tabelę MLTable na podstawie podanych ścieżek.
from_paths(paths)
Parametry
| Nazwa | Opis |
|---|---|
|
paths
Wymagane
|
Ścieżki obsługują pliki lub foldery ze ścieżkami lokalnymi lub w chmurze. Zakłada się, że względne lokalne ścieżki plików są względne względem bieżącego katalogu roboczego. Jeśli katalog nadrzędny, do którego jest względna ścieżka pliku lokalnego, nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku. |
Zwraca
| Typ | Opis |
|---|---|
|
Wystąpienie tabeli MLTable |
Uwagi
Musi istnieć prawidłowy słownik ścieżek
# load mltable from local paths
from mltable import from_paths
tbl = from_paths([{'file': "./samples/mltable_sample"}])
# load mltable from cloud paths
from mltable import load
tbl = from_paths(
[{'file': "https://<blob-storage-name>.blob.core.windows.net/<path>/sample_file"}])
load
Ładuje plik MLTable (YAML) znajdujący się na danym identyfikatorze URI.
storage_options obsługuje klucze "subscription", "resource_group", "workspace" lub "location". Wszystkie muszą zlokalizować obszar roboczy usługi Azure Machine Learning.
load(uri, storage_options: dict = None, ml_client=None)
Parametry
| Nazwa | Opis |
|---|---|
|
uri
Wymagane
|
Identyfikator URI obsługuje identyfikator URI magazynu danych o długiej postaci, identyfikator URI magazynu, ścieżkę lokalną lub identyfikator URI zasobu danych lub krótki identyfikator URI zasobu danych |
|
storage_options
Wymagane
|
Informacje o obszarze roboczym AML, gdy identyfikator URI jest zasobem AML |
|
ml_client
Wymagane
|
Wystąpienie klasy MLClient. Aby dowiedzieć się więcej, zobacz https://learn.microsoft.com/en-us/python/api/azure-ai-ml/azure.ai.ml.mlclient?view=azure-python |
Zwraca
| Typ | Opis |
|---|---|
|
Tabela ML |
Uwagi
W danym identyfikatorze URI musi znajdować się prawidłowy plik YAML tabeli MLTable o nazwie "MLTable".
# load mltable from local folder
from mltable import load
tbl = load('.\samples\mltable_sample')
# load mltable from azureml datastore uri
from mltable import load
tbl = load(
'azureml://subscriptions/<subscription-id>/
resourcegroups/<resourcegroup-name>/workspaces/<workspace-name>/
datastores/<datastore-name>/paths/<mltable-path-on-datastore>/')
# load mltable from azureml data asset uri
from mltable import load
tbl = load(
'azureml://subscriptions/<subscription-id>/
resourcegroups/<resourcegroup-name>/providers/Microsoft.MachineLearningServices/
workspaces/<workspace-name>/data/<data-asset-name>/versions/<data-asset-version>/')
# load mltable from azureml data asset short uri
from mltable import load
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential
credential = DefaultAzureCredential()
ml_client = MLClient(credential, <subscription_id>, <resourcegroup-name>, <workspace-name>)
tbl = load('azureml:<data-asset-name>:<version>', ml_client=ml_client)