Megosztás a következőn keresztül:


mltable Csomag

Meglévő és új MLTable-fájlok létrehozására szolgáló funkciókat tartalmaz.

Az mltable csomaggal bármilyen Python-környezetben betöltheti, átalakíthatja és elemezheti az adatokat, beleértve a Jupyter Notebookokat vagy a kedvenc Python IDE-jeit.

Csomagok

tests

Meglévő és új MLTable-fájlok létrehozására szolgáló funkciókat tartalmaz.

Az mltable csomaggal bármilyen Python-környezetben betöltheti, átalakíthatja és elemezheti az adatokat, beleértve a Jupyter Notebookokat vagy a kedvenc Python IDE-jeit.

Modulok

mltable

MLTable-objektumok létrehozására és kezeléséhez használható funkciókat tartalmaz

Osztályok

DataType

Segédosztály a támogatott oszloptípusok (int, bool, sztring stb.) megfelelő kezeléséhez. Jelenleg MLTable.convert_column_types(...) & from_delimited_files(...) használatával adhatja meg, hogy mely típusokat konvertálja az oszlopokká. Különböző típusok vannak kiválasztva DataType.from_(...) *Módszerek.

MLTable

MlTable-t jelöl.

Az MLTable egy lazilyan kiértékelt, nem módosítható műveletsort határoz meg az adatforrásból származó adatok betöltéséhez. Az adatok nem töltődnek be a forrásból, amíg az MLTable nem kéri az adatok továbbítását.

Új MLTable inicializálása.

Ezt a konstruktort nem szabad közvetlenül meghívni. Az MLTable a használatával loadhozható létre.

Enumerációk

MLTableFileEncoding

Meghatározza a kódolás feldolgozásának lehetőségeit, amikor adatokat olvas be fájlokból egy MLTable létrehozásához.

Ezeket az enumerálási értékeket az MLTable osztály használja.

MLTableHeaders

Meghatározza az oszlopfejlécek feldolgozásának beállításait, amikor adatokat olvas be a fájlokból egy MLTable létrehozásához.

Ezeket az enumerálási értékeket az MLTable osztály használja.

Függvények

from_delimited_files

Egy MLTable-t hoz létre a tagolt fájlok adott listájából.

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)

Paraméterek

Name Description
paths
Kötelező

Az elérési utak helyi vagy felhőbeli elérési utakkal rendelkező fájlokat vagy mappákat támogatnak. A relatív helyi fájlelérési utakat a rendszer az aktuális munkakönyvtárhoz viszonyítva feltételezi. Ha a szülőkönyvtárban egy helyi fájl elérési útja nem az aktuális munkakönyvtárhoz viszonyítva van, javasoljuk, hogy abszolút fájlelérési útként adja át az elérési utat.

header
Kötelező

Az oszlopfejlécek kezelése fájlokból való olvasáskor. A szám MLTableHeadershasználatával megadott beállítások. A támogatott fejlécek a következők: "no_header", "from_first_file", "all_files_different_headers" és "all_files_same_headers".

delimiter
Kötelező
str

oszlopok felosztásához használt elválasztó

support_multi_line
Kötelező

Ha Hamis, a program az összes sortörést , beleértve az idézőjeles mezőértékeket is, rekordtörésként értelmezi. Az adatok ily módon történő olvasása gyorsabb és optimalizáltabb a párhuzamos végrehajtáshoz több CPU-magon. Ez azonban azt eredményezheti, hogy csendesen több rekordot hoz létre helytelenül értelmezett mezőértékekkel. Ezt Igaz értékre kell állítani, ha a tagolt fájlok ismerten idézőjeles sortöréseket tartalmaznak.

Ennek a CSV-fájlnak a példáját tekintve az adatok másként lesznek beolvasva a support_multi_line alapján.

A,B,C A1,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
Kötelező

Az üres mezők kezelése. Ha az Igaz érték üres sztringként olvassa be az üres mezőket, máskülönben null értékként. Ha az Igaz és az oszlop dátum/idő vagy numerikus adatokat tartalmaz, az üres mezők továbbra is null értékként lesznek olvasva.

encoding
Kötelező

Megadja a fájlkódolást a szám MLTableFileEncodinghasználatával. A támogatott kódolások a következők:

  • utf8 as "utf8", "utf-8", "utf-8 bom"
  • iso88591 mint "iso88591" vagy "iso-8859-1"
  • latin1 mint "latin1" vagy "latin-1"
  • utf16 mint "utf16" vagy "utf-16"
  • windows1252 mint "windows1252" vagy "windows-1252"
include_path_column
Kötelező

Az elérési út adatainak megőrzése oszlopként az MLTable-ban, több fájl olvasásakor hasznos, és tudni szeretné, hogy egy adott rekord melyik fájlból származik, vagy hogy megőrizze a fájl elérési útján tárolható hasznos információkat.

infer_column_types
Kötelező

Ha igaz, az automatikusan az összes oszloptípusra következtet. Ha Hamis, az oszlopokat sztringként hagyja. Szótár esetén azokat az oszlopokat jelöli, amelyek típusait adott típusokra kell beállítani (az összes többi oszlop kikövetkeztetve). A szótár tartalmazhat egy sample_size nevű kulcsot, amely egy pozitív egész számra van leképezve, amely az oszloptípusok következtetéséhez használandó sorok számát jelöli. A szótár egy "column_type_overrides" nevű kulcsot is tartalmazhat. A szótár minden kulcsa vagy egy oszlopnevet jelölő sztring, vagy egy oszlopnevek egy csoportját jelölő karakterlánc. Minden érték vagy egy sztring (a "logikai", a "string", a "float" vagy az "int") vagy a DataType. mltable. DataType.to_stream() nem támogatott. Ha üres szótárat ad meg, akkor a feltételezés igaz. Alapértelmezés szerint Igaz.

Példa a infer_column_types formázására.


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

Válaszok

Típus Description

MLTable

Megjegyzések

Érvényes elérésiút-sztringnek kell lennie.


   # 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

Létrehoz egy MLTable objektumot a Parquet-fájlokban a Delta Lake-táblából való olvasáshoz.

from_delta_lake(delta_table_uri, timestamp_as_of=None, version_as_of=None, include_path_column=False)

Paraméterek

Name Description
delta_table_uri
Kötelező
str

Az URI a delta lake parquet-fájlokat tartalmazó delta table könyvtárra mutat. A támogatott URI-típusok a következők: helyi elérési út URI-ja, tároló URI-ja, hosszú formátumú adattár URI-ja vagy adategység URI-ja.

timestamp_as_of
Kötelező

datetime sztring RFC-3339/ISO-8601 formátumban egyező parquet-fájlok adott időpontból való beolvasásához. ex) "2022-10-01T00:00:00Z", "2022-10-01T00:00:00+08:00", "2022-10-01T01:30:00-08:00"

version_as_of
Kötelező
int

a parquet-fájlok adott verziójában való olvasáshoz használandó egész verzió.

include_path_column
Kötelező

Tartsa oszlopként az elérésiút-információkat, amelyek több fájl olvasásakor hasznosak lehetnek, és tudni szeretné, hogy egy adott rekord melyik fájlból származik, vagy hogy megőrizze a fájl elérési útján esetleg tárolt hasznos információkat.

Válaszok

Típus Description

MLTable-példány

Megjegyzések

from_delta_lake létrehoz egy MLTable objektumot, amely meghatározza azokat a műveleteket, amelyekkel adatokat tölthet be a Delta Lake mappából táblázatos megjelenítésre.

Ahhoz, hogy az adatok elérhetők legyenek az Azure Machine Learning számára, az elérési útnak a delta table könyvtárra kell mutatnia, és a hivatkozott Delta Lake-fájloknak elérhetőnek kell lenniük az AzureML-szolgáltatások vagy a nyilvános webes URL-címek mögött.

from_delta_lake támogatja a Delta Lake-adatok olvasását egy olyan URI-ból, amely a következőre mutat: helyi elérési út, Blob, ADLS Gen1 és ADLS Gen2

A felhasználók a visszaadott MLTable to_pandas_dataframe() meghívásával beolvashatják és materializálhatják az adatokat


   # 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

Hozzon létre egy MLTable-t a JSON-fájl elérési útjainak megadott listájából.

from_json_lines_files(paths, invalid_lines='error', encoding='utf8', include_path_column=False)

Paraméterek

Name Description
paths
Kötelező

Az elérési utak helyi vagy felhőbeli elérési utakkal rendelkező fájlokat vagy mappákat támogatnak. A relatív helyi fájlelérési utakat a rendszer az aktuális munkakönyvtárhoz viszonyítva feltételezi. Ha a szülőkönyvtárban egy helyi fájl elérési útja nem az aktuális munkakönyvtárhoz viszonyítva van, javasoljuk, hogy abszolút fájlelérési útként adja át az elérési utat.

invalid_lines
Kötelező
str

Az érvénytelen JSON-vonalak kezelése "drop" vagy "error" lehet. Ha a "drop" érvénytelen sorokat töröl, máskülönben hiba keletkezik.

encoding
Kötelező

Megadja a fájlkódolást a szám MLTableFileEncodinghasználatával. Támogatott fájlkódolások:

  • utf8 as "utf8", "utf-8", "utf-8 bom"
  • iso88591 mint "iso88591" vagy "iso-8859-1"
  • latin1 mint "latin1" vagy "latin-1"
  • utf16 mint "utf16" vagy "utf-16"
  • windows1252 mint "windows1252" vagy "windows-1252"
include_path_column
Kötelező

Tartsa oszlopként az elérésiút-információkat, amelyek több fájl olvasásakor hasznosak lehetnek, és tudni szeretné, hogy egy adott rekord melyik fájlból származik, vagy hogy megőrizze a fájl elérési útján esetleg tárolt hasznos információkat.

Válaszok

Típus Description

MLTable

Megjegyzések

Érvényes elérésiút-szótárnak kell lennie


   # 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

Hozza létre az MLTable táblát a parquet-fájlok megadott listájából.

from_parquet_files(paths, include_path_column=False)

Paraméterek

Name Description
paths
Kötelező

Az elérési utak helyi vagy felhőbeli elérési utakkal rendelkező fájlokat vagy mappákat támogatnak. A relatív helyi fájlelérési utakat a rendszer az aktuális munkakönyvtárhoz viszonyítva feltételezi. Ha a szülőkönyvtárban egy helyi fájl elérési útja nem az aktuális munkakönyvtárhoz viszonyítva van, javasoljuk, hogy abszolút fájlelérési útként adja át az elérési utat.

include_path_column
Kötelező

Tartsa oszlopként az elérésiút-információkat, amelyek több fájl olvasásakor hasznosak lehetnek, és tudni szeretné, hogy egy adott rekord melyik fájlból származik, vagy hogy megőrizze a fájl elérési útján esetleg tárolt hasznos információkat.

Válaszok

Típus Description

MLTable-példány

Megjegyzések

Érvényes elérésiút-szótárnak kell lennie


   # 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

Hozza létre az MLTable-t a megadott elérési utakból.

from_paths(paths)

Paraméterek

Name Description
paths
Kötelező

Az elérési utak helyi vagy felhőbeli elérési utakkal rendelkező fájlokat vagy mappákat támogatnak. A relatív helyi fájlelérési utakat a rendszer az aktuális munkakönyvtárhoz viszonyítva feltételezi. Ha a szülőkönyvtárban egy helyi fájl elérési útja nem az aktuális munkakönyvtárhoz viszonyítva van, javasoljuk, hogy abszolút fájlelérési útként adja át az elérési utat.

Válaszok

Típus Description

MLTable-példány

Megjegyzések

Érvényes elérésiút-szótárnak kell lennie


   # 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

Betölti a megadott URI-n található MLTable-fájlt (YAML).

storage_options támogatja az "előfizetés", a "resource_group", a "munkaterület" vagy a "hely" kulcsait. Mindegyiknek meg kell keresnie egy Azure Machine Learning-munkaterületet.

load(uri, storage_options: dict = None, ml_client=None)

Paraméterek

Name Description
uri
Kötelező
str

Az uri támogatja a hosszú formátumú adattár URI-ját, a tárolási URI-t, a helyi elérési utat, az adategység URI-ját vagy az adategység rövid URI-ját

storage_options
Kötelező

AML-munkaterület adatai, ha az URI egy AML-objektum

ml_client
Kötelező

Válaszok

Típus Description

MLTable

Megjegyzések

A megadott URI-n egy "MLTable" nevű érvényes MLTable YAML-fájlnak kell szerepelnie.


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