mltable Moduł
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(...) & from_delimited_files(...) do określania typów, na które mają być konwertowane kolumny. Różne typy są wybierane z DataType.from_(...) *Metody. |
MLTable |
Reprezentuje tabelę MLTable. Tabela MLTable definiuje serię niezmienialnych operacji obliczanych w celu zał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. |
Metadata |
Klasa, która mapuje na sekcję metadanych tabeli MLTable. Obsługuje pobieranie & dodawania właściwości metadanych arbritrary. |
Traits |
Klasa, która mapuje na sekcję cech tabeli MLTable. Obecnie obsługiwane cechy: timestamp_column i index_columns |
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. |
MLTablePartitionSize |
Wyliczenie pomocnika reprezentujące pamięć przydzieloną do odczytywania różnych partycji dla wybranych formatów plików w różnych jednostkach pamięci. Obecnie używane podczas odczytywania plików wierszy rozdzielanych lub JSON. Obsługuje bajty, kilobajty, megabajty i gigabajty jako jednostki pamięci — w pliku binarnym. |
MLTableSaveOverwriteOption |
Definiuje opcje obsługi konfliktów plików w tabeli MLTable.save(). EIther zgłosić błąd, jeśli wystąpi konflikt, zastąp istniejący plik nowym plikiem lub pozostaw istniejący plik w takiej postaci. |
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
Ś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 ścieżka pliku lokalnego jest względna nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku.
- header
- Union[str, MLTableHeaders]
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".
- support_multi_line
- bool
Jeśli wartość False, wszystkie podziały wierszy, w tym te w wartościach pól cytowanych, 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 CPU. 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
from mltable import from_delimited_files
# default behavior: support_multi_line=False
mltable = from_delimited_files(path)
print(mltable.to_pandas_dataframe())
# A B C
# 0 A1 B1 C1
# 1 A2 B None
# 2 2" C2 None
# to handle quoted line breaks
mltable = from_delimited_files(path, support_multi_line=True)
print(mltable.to_pandas_dataframe())
# A B C
# 0 A1 B1 C1
# 1 A2 B\r\n2 C2
- empty_as_string
- bool
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
- Union[str, MLTableFileEncoding]
Określa kodowanie pliku przy użyciu wyliczenia MLTableFileEncoding. Obsługiwane kodowanie to:
- utf8 jako "utf8", "utf-8", "utf-8 bom"
- iso88591 jako "iso88591" lub "iso-8859-1"
- latin1 jako "latin1" lub "latin-1"
- utf16 jako "utf16" lub "utf-16"
- windows1252 jako "windows1252" lub "windows-1252"
- include_path_column
- bool
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.
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 wywnioskowanych). Słownik może zawierać klucz o nazwie sample_size zamapowany na dodatnią liczbę całkowitą reprezentującą liczbę wierszy do użycia na potrzeby 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ść jest ciągiem (jednym z wartości logicznych, "string", "float" lub "int") albo 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.
from mltable import from_delimited_files
# default behavior: support_multi_line=False
mltable = from_delimited_files(paths, infer_column_types={
'sample_size': 100,
'column_type_overrides': {
'colA': 'boolean'
('colB', 'colC'): DataType.to_int()
}
})
Zwraca
Tabela MLTable
Typ zwracany
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 usługi Delta Lake.
from_delta_lake(delta_table_uri, timestamp_as_of=None, version_as_of=None, include_path_column=False)
Parametry
- delta_table_uri
- str
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 o długiej formie lub identyfikator URI zasobu danych.
- timestamp_as_of
- string
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
- int
wersja całkowita, która ma być używana do odczytu w określonej wersji plików parquet.
- include_path_column
- bool
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
Wystąpienie tabeli MLTable
Typ zwracany
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 tabeli delty i pliki usługi Delta Lake, do których się odwołujesz, muszą być dostępne dla usług AzureML lub za publicznymi internetowymi adresami URL.
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, wywołując funkcję to_pandas_dataframe() przy 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
Ś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 ścieżka pliku lokalnego jest względna nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku.
- invalid_lines
- str
Jak obsługiwać wiersze, które są nieprawidłowe w formacie JSON, mogą być "drop" lub "error". Jeśli "upuść" nieprawidłowe wiersze są porzucane, zostanie zgłoszony błąd else.
- encoding
- Union[str, MLTableFileEncoding]
Określa kodowanie pliku przy użyciu wyliczenia MLTableFileEncoding. Obsługiwane kodowanie plików:
- utf8 jako "utf8", "utf-8", "utf-8 bom"
- iso88591 jako "iso88591" lub "iso-8859-1"
- latin1 jako "latin1" lub "latin-1"
- utf16 jako "utf16" lub "utf-16"
- windows1252 jako "windows1252" lub "windows-1252"
- include_path_column
- bool
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
Tabela MLTable
Typ zwracany
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 danej listy plików parquet.
from_parquet_files(paths, include_path_column=False)
Parametry
Ś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 ścieżka pliku lokalnego jest względna nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku.
- include_path_column
- bool
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
Wystąpienie tabeli MLTable
Typ zwracany
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
Ś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 ścieżka pliku lokalnego jest względna nie jest bieżącym katalogiem roboczym, zaleca się przekazanie tej ścieżki jako ścieżki bezwzględnej pliku.
Zwraca
Wystąpienie tabeli MLTable
Typ zwracany
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 elementy muszą zlokalizować obszar roboczy usługi Azure Machine Learning.
load(uri, storage_options: dict = None, ml_client=None)
Parametry
- uri
- str
Identyfikator URI obsługuje identyfikator URI magazynu danych o długiej formie, identyfikator URI magazynu, ścieżkę lokalną lub identyfikator URI zasobu danych albo krótki identyfikator URI zasobu danych
Informacje o obszarze roboczym AML, gdy identyfikator URI jest zasobem AML
- ml_client
- MLClient
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
Tabela MLTable
Typ zwracany
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)
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla