MLTable Sınıf

MLTable'ları temsil eder.

MLTable, veri kaynağından veri yüklemek için bir dizi yavaş değerlendirilen, sabit işlem tanımlar. MLTable'dan veri teslimi istenene kadar veriler kaynaktan yüklenmez.

Yeni bir MLTable başlatın.

Bu oluşturucu doğrudan çağrılmamalıdır. MLTable kullanılarak loadoluşturulması amaçlanmıştır.

Devralma
builtins.object
MLTable

Oluşturucu

MLTable()

Yöntemler

convert_column_types

Belirtilen sütunları ilgili yeni türlerine dönüştürmek için bir dönüştürme adımı ekler.


   from mltable import DataType
       data_types = {
           'ID': DataType.to_string(),
           'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
           'Count': DataType.to_int(),
           'Latitude': DataType.to_float(),
           'Found': DataType.to_bool(),
           'Stream': DataType.to_stream()
       }
drop_columns

Veri kümesinden belirli sütunları bırakmak için bir dönüştürme adımı ekler. Boş bir liste, tanımlama grubu veya küme verildiğinde hiçbir şey bırakılmaz. Yinelenen sütunlar userErrorException oluşturur.

MLTable.traits.timestamp_column veya MLTable.traits.index_columns olan bir sütunu bırakma girişimi, UserErrorException'ı tetikler.

extract_columns_from_partition_format

Her yolun bölüm bilgilerini kullanmak ve bunları belirtilen bölüm biçimine göre sütunlara ayıklamak için bir dönüştürme adımı ekler.

'{column_name}' biçim bölümü dize sütunu oluşturur ve '{column_name:yyyy/AA/GG/SS/aa/ss}' datetime sütunu oluşturur; burada tarih saat türü için yıl, ay, gün, saat, dakika ve saniyeyi ayıklamak için 'yyyy', 'MM', 'dd', 'SS', 'mm' ve 'ss' kullanılır.

Biçim, ilk bölüm anahtarının konumundan dosya yolunun sonuna kadar başlamalıdır. Örneğin, bölümün bölüm adına ve saatlerine göre olduğu '/Accounts/2019/01/01/data.csv' yolu göz önünde bulundurulduğunda, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv', 'Accounts' değerine sahip 'Department' dize sütunu ve '2019-01-01' değerine sahip 'PartitionDate' tarih saat sütunu oluşturur.

filter

Yalnızca belirtilen ifadeyle eşleşen kayıtları bırakarak verileri filtreleyin.

get_partition_count

Bu MLTable ile ilişkili verilerin temelini oluşturan veri bölümlerinin sayısını döndürür.

keep_columns

Belirtilen sütunları korumak ve diğer tüm sütunları veri kümesinden kaldırmak için bir dönüştürme adımı ekler. Boş bir liste, tanımlama grubu veya küme verildiğinde hiçbir şey bırakılmaz. Yinelenen sütunlar userErrorException oluşturur.

MLTable.traits.timestamp_column sütun veya MLTable.traits.index_columns'daki sütunlar açıkça saklanmazsa, UserErrorException düzensizdir.

random_split

Bu MLTable'ı rastgele olarak iki MLTable'a böler; bunlardan biri özgün MLTable verilerinin yaklaşık %"sine", diğeri kalana (%1-"yüzde") sahiptir.

save

Bu MLTable'ı verilen dizin yolu ile ilişkilendirilmiş yollarını & MLTable YAML dosyası olarak kaydedin.

Yol verilmezse, varsayılan olarak geçerli çalışma dizinini kullanır. Yol yoksa oluşturulur. Yol uzaksa, temel alınan veri deposunun zaten mevcut olması gerekir. Yol yerel bir dizinse & mutlak değilse, mutlak yapılır.

Yol bir dosyaya işaret ederse, userErrorException oluşturulur. Yol zaten kaydedilmiş bir veya daha fazla dosya içeren bir dizin yoluysa (MLTable YAML dosyası dahil) ve üzerine yazma False veya 'fail' olarak ayarlandıysa, UserErrorException oluşturulur. Yol uzaksa, birlikte bulunan yol olarak verilmeyen tüm yerel dosya yolları (MLTable'ın yüklendiği dizine göre dosya yolu) userErrorException oluşturur.

birlikte konumlandırılmış , ilişkili yolların yola nasıl kaydedileceğini denetler. True ise, dosyalar MLTable YAML dosyasının yanındaki yola göreli dosya yolları olarak kopyalanır. Aksi takdirde ilişkili dosyalar kopyalanmaz, uzak yollar verilen şekilde kalır ve gerekirse yerel dosya yolları yol yeniden yönlendirmesiyle göreli hale getirilir. False'un önerilmez, ayrıca yol uzaksa uzak URI'ler için göreli yol yeniden yönlendirmesi desteklenmediğinden UserErrorException ile sonuçlanabileceğini unutmayın.

MLTable, from_paths() veya yerel göreli yollara sahip from_read_delimited_files() gibi yöntemlerle programlı olarak oluşturulursa, MLTable dizin yolunun geçerli çalışma dizini olduğu varsayılır.

Yeni bir MLTable & ilişkili veri dosyalarını, yeni dosyaları kaydetmeden önce dizinin mevcut dosyalardan temizlenmediği ilişkili veri dosyaları & mevcut MLTable dosyasıyla bir dizine kaydederken dikkatli olun. Özellikle mevcut veri dosyalarının yeni veri dosyalarıyla eşleşen adları yoksa, yeni dosyaları kaydettikten sonra zaten var olan veri dosyalarının kalıcı olması mümkündür. Yeni MLTable, yollarının altında bir desen belirleyicisi içeriyorsa, varolan veri dosyalarını yeni MLTable ile ilişkilendirerek MLTable'ı istemeden değiştirebilir.

Bu MLTable'daki dosya yolları yoldaki mevcut bir dosyayı gösteriyorsa ancak farklı bir URI'sine sahipse, üzerine yazma 'başarısız' veya 'atla' ise varolan dosyanın üzerine yazılmaz (atlanır).

select_partitions

Bölümü seçmek için bir dönüştürme adımı ekler.

show

Bu MLTable'ın ilk sayı satırlarını Pandas Veri Çerçevesi olarak alır.

skip

Bu MLTable'ın ilk sayı satırlarını atlamak için bir dönüştürme adımı ekler.

take

Bu MLTable'ın ilk sayı satırlarını seçmek için bir dönüştürme adımı ekler.

take_random_sample

Olasılık olasılığı olan bu MLTable'ın her satırını rastgele seçmek için bir dönüştürme adımı ekler. Olasılık [0, 1] aralığında olmalıdır. İsteğe bağlı olarak rastgele bir tohum ayarlayabilir.

to_pandas_dataframe

MLTable dosyasında belirtilen yollardaki tüm kayıtları Pandas DataFrame'e yükleyin.

validate

Bu MLTable'ın verilerinin yüklenebildiğini doğrular, MLTable'ın veri kaynaklarının geçerli işlemden erişilebilir olmasını gerektirir.

convert_column_types

Belirtilen sütunları ilgili yeni türlerine dönüştürmek için bir dönüştürme adımı ekler.


   from mltable import DataType
       data_types = {
           'ID': DataType.to_string(),
           'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
           'Count': DataType.to_int(),
           'Latitude': DataType.to_float(),
           'Found': DataType.to_bool(),
           'Stream': DataType.to_stream()
       }
convert_column_types(column_types)

Parametreler

column_types
dict[Union[Tuple[str], str], DataType]
Gerekli

Sütun sözlüğü: kullanıcının dönüştürmek istediği türler

Döndürülenler

Eklenen dönüştürme adımıyla MLTable

Dönüş türü

drop_columns

Veri kümesinden belirli sütunları bırakmak için bir dönüştürme adımı ekler. Boş bir liste, tanımlama grubu veya küme verildiğinde hiçbir şey bırakılmaz. Yinelenen sütunlar userErrorException oluşturur.

MLTable.traits.timestamp_column veya MLTable.traits.index_columns olan bir sütunu bırakma girişimi, UserErrorException'ı tetikler.

drop_columns(columns: str | List[str] | Tuple[str] | Set[str])

Parametreler

columns
Union[str, list[str], <xref:builtin.tuple>[str], <xref:builtin.set>[str]]
Gerekli

bu MLTable'dan bırakılabilir sütunlar

Döndürülenler

Eklenen dönüştürme adımıyla MLTable

Dönüş türü

extract_columns_from_partition_format

Her yolun bölüm bilgilerini kullanmak ve bunları belirtilen bölüm biçimine göre sütunlara ayıklamak için bir dönüştürme adımı ekler.

'{column_name}' biçim bölümü dize sütunu oluşturur ve '{column_name:yyyy/AA/GG/SS/aa/ss}' datetime sütunu oluşturur; burada tarih saat türü için yıl, ay, gün, saat, dakika ve saniyeyi ayıklamak için 'yyyy', 'MM', 'dd', 'SS', 'mm' ve 'ss' kullanılır.

Biçim, ilk bölüm anahtarının konumundan dosya yolunun sonuna kadar başlamalıdır. Örneğin, bölümün bölüm adına ve saatlerine göre olduğu '/Accounts/2019/01/01/data.csv' yolu göz önünde bulundurulduğunda, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv', 'Accounts' değerine sahip 'Department' dize sütunu ve '2019-01-01' değerine sahip 'PartitionDate' tarih saat sütunu oluşturur.

extract_columns_from_partition_format(partition_format)

Parametreler

partition_format
str
Gerekli

Verileri sütunlara ayıklamak için kullanılacak bölüm biçimi

Döndürülenler

Bölüm biçimi verilen biçime ayarlanmış MLTable

Dönüş türü

filter

Yalnızca belirtilen ifadeyle eşleşen kayıtları bırakarak verileri filtreleyin.

filter(expression)

Parametreler

expression
string
Gerekli

Değerlendirilecek ifade.

Döndürülenler

Filtreden sonra MLTable

Dönüş türü

Açıklamalar

İfadeler, mltable'ın dizinini bir sütun adıyla oluşturarak başlatılır. Bunlar çeşitli işlevleri ve işleçleri destekler ve mantıksal işleçler kullanılarak birleştirilebilir. Sonuçta elde edilen ifade, tanımlandığı yerde değil, bir veri çekme işlemi gerçekleştiğinde her kayıt için gevşek bir şekilde değerlendirilir.


   filtered_mltable = mltable.filter('feature_1 == "5" and target > "0.5)"')
   filtered_mltable = mltable.filter('col("FBI Code") == "11"')

get_partition_count

Bu MLTable ile ilişkili verilerin temelini oluşturan veri bölümlerinin sayısını döndürür.

get_partition_count() -> int

Döndürülenler

bu MLTable'daki veri bölümleri

Dönüş türü

int

keep_columns

Belirtilen sütunları korumak ve diğer tüm sütunları veri kümesinden kaldırmak için bir dönüştürme adımı ekler. Boş bir liste, tanımlama grubu veya küme verildiğinde hiçbir şey bırakılmaz. Yinelenen sütunlar userErrorException oluşturur.

MLTable.traits.timestamp_column sütun veya MLTable.traits.index_columns'daki sütunlar açıkça saklanmazsa, UserErrorException düzensizdir.

keep_columns(columns: str | List[str] | Tuple[str] | Set[str])

Parametreler

columns
Union[str, list[str], <xref:builtin.tuple>[str], <xref:builtin.set>[str]]
Gerekli

tutulacak bu MLTable'daki sütunlar

Döndürülenler

Eklenen dönüştürme adımıyla MLTable

Dönüş türü

random_split

Bu MLTable'ı rastgele olarak iki MLTable'a böler; bunlardan biri özgün MLTable verilerinin yaklaşık %"sine", diğeri kalana (%1-"yüzde") sahiptir.

random_split(percent=0.5, seed=None)

Parametreler

percent
Union[int, float]
Gerekli

arasında bölünecek MLTable yüzdesi

seed
Optional[int]
Gerekli

isteğe bağlı rastgele tohum

Döndürülenler

Bu MLTable'ın verileri arasında "yüzde" ile bölünmüş iki MLTable

Dönüş türü

<xref:Tuple>[MLTable, MLTable]

save

Bu MLTable'ı verilen dizin yolu ile ilişkilendirilmiş yollarını & MLTable YAML dosyası olarak kaydedin.

Yol verilmezse, varsayılan olarak geçerli çalışma dizinini kullanır. Yol yoksa oluşturulur. Yol uzaksa, temel alınan veri deposunun zaten mevcut olması gerekir. Yol yerel bir dizinse & mutlak değilse, mutlak yapılır.

Yol bir dosyaya işaret ederse, userErrorException oluşturulur. Yol zaten kaydedilmiş bir veya daha fazla dosya içeren bir dizin yoluysa (MLTable YAML dosyası dahil) ve üzerine yazma False veya 'fail' olarak ayarlandıysa, UserErrorException oluşturulur. Yol uzaksa, birlikte bulunan yol olarak verilmeyen tüm yerel dosya yolları (MLTable'ın yüklendiği dizine göre dosya yolu) userErrorException oluşturur.

birlikte konumlandırılmış , ilişkili yolların yola nasıl kaydedileceğini denetler. True ise, dosyalar MLTable YAML dosyasının yanındaki yola göreli dosya yolları olarak kopyalanır. Aksi takdirde ilişkili dosyalar kopyalanmaz, uzak yollar verilen şekilde kalır ve gerekirse yerel dosya yolları yol yeniden yönlendirmesiyle göreli hale getirilir. False'un önerilmez, ayrıca yol uzaksa uzak URI'ler için göreli yol yeniden yönlendirmesi desteklenmediğinden UserErrorException ile sonuçlanabileceğini unutmayın.

MLTable, from_paths() veya yerel göreli yollara sahip from_read_delimited_files() gibi yöntemlerle programlı olarak oluşturulursa, MLTable dizin yolunun geçerli çalışma dizini olduğu varsayılır.

Yeni bir MLTable & ilişkili veri dosyalarını, yeni dosyaları kaydetmeden önce dizinin mevcut dosyalardan temizlenmediği ilişkili veri dosyaları & mevcut MLTable dosyasıyla bir dizine kaydederken dikkatli olun. Özellikle mevcut veri dosyalarının yeni veri dosyalarıyla eşleşen adları yoksa, yeni dosyaları kaydettikten sonra zaten var olan veri dosyalarının kalıcı olması mümkündür. Yeni MLTable, yollarının altında bir desen belirleyicisi içeriyorsa, varolan veri dosyalarını yeni MLTable ile ilişkilendirerek MLTable'ı istemeden değiştirebilir.

Bu MLTable'daki dosya yolları yoldaki mevcut bir dosyayı gösteriyorsa ancak farklı bir URI'sine sahipse, üzerine yazma 'başarısız' veya 'atla' ise varolan dosyanın üzerine yazılmaz (atlanır).

save(path=None, overwrite=True, colocated=False, show_progress=False, if_err_remove_files=True)

Parametreler

path
str
Gerekli

kaydedilecek dizin yolu, varsayılan olarak geçerli çalışma dizini

colocated
bool
Gerekli

True ise, bu MLTable'da yerel & uzak dosya yollarının kopyalarını göreli yollar olarak kaydeder . Aksi takdirde hiçbir dosya kopyalama gerçekleşmez ve uzak dosya yolları, kaydedilen MLTable YAML dosyasına ve yerel dosya yollarına yol yeniden yönlendirmeli göreli dosya yolları olarak verildiği şekilde kaydedilir. Yol uzaksa & bu MLTable yerel dosya yolları içeriyorsa, bir UserErrorException oluşturulur.

overwrite
Union[bool, str, <xref:mltable.MLTableSaveOverwriteOptions>]
Gerekli

Bir MLTable YAML dosyasının ve yol altında zaten mevcut olabilecek ilişkili dosyaların nasıl işlendiğini. Seçenekler mevcut dosyaları değiştirmek için 'üzerine yaz' (veya True), bir dosya zaten varsa hata oluşturmak için 'fail' (veya False) veya mevcut dosyaları olduğu gibi bırakmak için 'atla'dır. ile <xref:mltable.MLTableSaveOverwriteOptions>de ayarlanabilir.

show_progress
bool
Gerekli

stdout'a kopyalama ilerleme durumunu görüntüler

if_err_remove_files
bool
Gerekli

Kaydetme sırasında herhangi bir hata oluşursa, işlemi atomik hale getirmek için başarıyla kaydedilen tüm dosyalar kaldırıldı

Döndürülenler

bu MLTable örneği

Dönüş türü

select_partitions

Bölümü seçmek için bir dönüştürme adımı ekler.

select_partitions(partition_index_list)

Parametreler

partition_index_list
list of int
Gerekli

bölüm dizini listesi

Döndürülenler

Bölüm boyutu güncelleştirilmiş MLTable

Dönüş türü

Açıklamalar

Aşağıdaki kod parçacığı, sağlanan MLTable'dan seçilen bölümlere select_partitions API'sinin nasıl kullanılacağını gösterir.


   partition_index_list = [1, 2]
   mltable = mltable.select_partitions(partition_index_list)

show

Bu MLTable'ın ilk sayı satırlarını Pandas Veri Çerçevesi olarak alır.

show(count=20)

Parametreler

count
int
Gerekli

tablonun üst kısmından seçilebilen satır sayısı

Döndürülenler

MLTable'ın ilk satırlarını sayma

Dönüş türü

<xref:<xref:Pandas Dataframe>>

skip

Bu MLTable'ın ilk sayı satırlarını atlamak için bir dönüştürme adımı ekler.

skip(count)

Parametreler

count
int
Gerekli

atlana satır sayısı

Döndürülenler

Eklenen dönüştürme adımıyla MLTable

take

Bu MLTable'ın ilk sayı satırlarını seçmek için bir dönüştürme adımı ekler.

take(count=20)

Parametreler

count
int
Gerekli

tablonun üst kısmından seçilebilen satır sayısı

Döndürülenler

Eklenen "take" dönüştürme adımıyla MLTable

Dönüş türü

take_random_sample

Olasılık olasılığı olan bu MLTable'ın her satırını rastgele seçmek için bir dönüştürme adımı ekler. Olasılık [0, 1] aralığında olmalıdır. İsteğe bağlı olarak rastgele bir tohum ayarlayabilir.

take_random_sample(probability, seed=None)

Parametreler

probability
Gerekli

her satırın seçilme şansı

seed
Optional[int]
Gerekli

isteğe bağlı rastgele tohum

Döndürülenler

Eklenen dönüştürme adımıyla MLTable

Dönüş türü

to_pandas_dataframe

MLTable dosyasında belirtilen yollardaki tüm kayıtları Pandas DataFrame'e yükleyin.

to_pandas_dataframe()

Döndürülenler

Bu MLTable'daki yollardan kayıtları içeren Pandas Dataframe

Dönüş türü

Açıklamalar

Aşağıdaki kod parçacığı, sağlanan MLTable'a karşılık gelen bir pandas veri çerçevesini almak için to_pandas_dataframe API'sinin nasıl kullanılacağını gösterir.


   from mltable import load
   tbl = load('.\samples\mltable_sample')
   pdf = tbl.to_pandas_dataframe()
   print(pdf.shape)

validate

Bu MLTable'ın verilerinin yüklenebildiğini doğrular, MLTable'ın veri kaynaklarının geçerli işlemden erişilebilir olmasını gerektirir.

validate()

Döndürülenler

Hiçbiri

Dönüş türü

Öznitelikler

partition_keys

Bölüm anahtarlarını döndür.

Döndürülenler

bölüm anahtarları

Dönüş türü

paths

Bu MLTable'a verilen özgün yolları içeren sözlüklerin listesini döndürür. Göreli yerel dosya yollarının, bu MLTable örneğinin yüklendiği MLTable YAML dosyasının bulunduğu dizine göre olduğu varsayılır.

Döndürülenler

MLTable'da belirtilen yolları içeren diktelerin listesi

Dönüş türü