microsoftml.rx_featurize: Transformasi data untuk sumber data

Usage

microsoftml.rx_featurize(data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
    pandas.core.frame.DataFrame],
    output_data: typing.Union[revoscalepy.datasource.RxDataSource.RxDataSource,
    str] = None, overwrite: bool = False,
    data_threads: int = None, random_seed: int = None,
    max_slots: int = 5000, ml_transforms: list = None,
    ml_transform_vars: list = None, row_selection: str = None,
    transforms: dict = None, transform_objects: dict = None,
    transform_function: str = None,
    transform_variables: list = None,
    transform_packages: list = None,
    transform_environment: dict = None, blocks_per_read: int = None,
    report_progress: int = None, verbose: int = 1,
    compute_context: revoscalepy.computecontext.RxComputeContext.RxComputeContext = None)

Deskripsi

Mengubah data dari himpunan data input menjadi himpunan data output.

Arguments

data

Objek sumber data revoscalepy, frame data, atau jalur ke .xdf file.

output_data

Teks keluaran atau nama file xdf atau yang RxDataSource memiliki kemampuan menulis untuk menyimpan data yang telah ditransformasi. Jika Tidak ada, sebuah frame data akan dikembalikan. Nilai defaultnya adalah Tidak Ada.

Mengganti

Jika True, sebuah yang sudah ada output_data ditimpa; jika False sebuah yang ada output_data tidak ditimpa. Nilai defaultnya adalah False.

data_threads

Sebuah bilangan bulat yang menentukan tingkat paralelisme yang diinginkan dalam pipeline data. Jika Tidak ada, jumlah thread yang digunakan ditentukan secara internal. Nilai defaultnya adalah Tidak Ada.

random_seed

Menentukan seed acak. Nilai defaultnya adalah Tidak Ada.

max_slots

Maksimalkan slot untuk dikembalikan untuk kolom bernilai vektor (<=0 untuk mengembalikan semua).

ml_transforms

Menentukan daftar transformasi MicrosoftML yang akan dilakukan pada data sebelum pelatihan atau Tidak ada jika tidak ada transformasi yang harus dilakukan. Lihat featurize_text, categorical, dan categorical_hash, untuk transformasi yang didukung. Transformasi ini dilakukan setelah transformasi Python tertentu. Nilai defaultnya adalah Tidak Ada.

ml_transform_vars

Menentukan vektor karakter nama variabel yang akan digunakan di ml_transforms atau Tidak Ada jika tidak ada yang akan digunakan. Nilai defaultnya adalah Tidak Ada.

row_selection

TIDAK DIDUKUNG. Menentukan baris (pengamatan) dari himpunan data yang akan digunakan oleh model dengan nama variabel logis dari himpunan data (dalam tanda kutip) atau dengan ekspresi logis menggunakan variabel dalam himpunan data. Contohnya:

  • row_selection = "old" hanya akan menggunakan pengamatan di mana nilai variabel old adalah True.

  • row_selection = (age > 20) & (age < 65) & (log(income) > 10) hanya menggunakan pengamatan di mana nilai age variabel antara 20 dan 65 dan nilai logincome variabel lebih besar dari 10.

Pemilihan baris dilakukan setelah memproses transformasi data apa pun (lihat argumen transforms atau transform_function). Seperti semua ekspresi, row_selection dapat didefinisikan di luar panggilan fungsi menggunakan expression fungsi .

Mengubah

TIDAK DIDUKUNG. Ekspresi formulir yang mewakili putaran pertama transformasi variabel. Seperti semua ekspresi, transforms (atau row_selection) dapat didefinisikan di luar panggilan fungsi menggunakan expression fungsi . Nilai defaultnya adalah Tidak Ada.

transform_objects

TIDAK DIDUKUNG. Daftar bernama yang berisi objek yang dapat dirujuk oleh transforms, , transform_functiondan row_selection. Nilai defaultnya adalah Tidak Ada.

transform_function

Fungsi transformasi variabel. Nilai defaultnya adalah Tidak Ada.

transform_variables

Vektor karakter variabel himpunan data input yang diperlukan untuk fungsi transformasi. Nilai defaultnya adalah Tidak Ada.

transform_packages

TIDAK DIDUKUNG. Vektor karakter yang menentukan paket Python tambahan (di luar yang ditentukan dalam RxOptions.get_option("transform_packages")) untuk tersedia dan dimuat sebelumnya untuk digunakan dalam fungsi transformasi variabel. Misalnya, mereka yang secara eksplisit didefinisikan dalam fungsi pencabutan skala melalui argumen dan transforms mereka transform_function atau yang didefinisikan secara implisit melalui argumen atau formula merekarow_selection. Argumen transform_packages mungkin juga Tidak Ada, menunjukkan bahwa tidak ada paket di luar RxOptions.get_option("transform_packages") yang dimuat sebelumnya.

transform_environment

TIDAK DIDUKUNG. Lingkungan yang ditentukan pengguna untuk berfungsi sebagai induk untuk semua lingkungan yang dikembangkan secara internal dan digunakan untuk transformasi data variabel. Jika transform_environment = None, lingkungan "hash" baru dengan induk revoscalepy.baseenv digunakan sebagai gantinya Nilai default adalah None.

blocks_per_read

Menentukan jumlah blok yang akan dibaca untuk setiap potongan data yang dibaca dari sumber data.

report_progress

Nilai bilangan bulat yang menentukan tingkat pelaporan pada kemajuan pemrosesan baris:

  • 0: tidak ada kemajuan yang dilaporkan.

  • 1: jumlah baris yang diproses dicetak dan diperbarui.

  • 2: baris yang diproses dan waktunya dilaporkan.

  • 3: baris yang diproses dan semua waktu dilaporkan.

Nilai defaultnya adalah 1.

verbose

Nilai bilangan bulat yang menentukan jumlah output yang diinginkan. Jika 0, tidak ada output verbose yang dicetak selama perhitungan. Nilai bilangan bulat dari 1 untuk 4 memberikan peningkatan jumlah informasi. Nilai defaultnya adalah 1.

compute_context

Mengatur konteks di mana komputasi dijalankan, ditentukan dengan pencabutan skala yang valid. RxComputeContext. Saat ini lokal dan pencabutan. Konteks komputasi RxInSqlServer didukung.

Pengembalian Barang

Sebuah data frame atau revoscalepy. Objek RxDataSource yang mewakili data output yang dibuat.

Contoh

'''
Example with rx_featurize.
'''
import numpy
import pandas
from microsoftml import rx_featurize, categorical

# rx_featurize basically allows you to access data from the MicrosoftML transforms
# In this example we'll look at getting the output of the categorical transform
# Create the data
categorical_data = pandas.DataFrame(data=dict(places_visited=[
                "London", "Brunei", "London", "Paris", "Seria"]),
                dtype="category")
                
print(categorical_data)

# Invoke the categorical transform
categorized = rx_featurize(data=categorical_data,
                           ml_transforms=[categorical(cols=dict(xdatacat="places_visited"))])

# Now let's look at the data
print(categorized)

Output:

  places_visited
0         London
1         Brunei
2         London
3          Paris
4          Seria
Beginning processing data.
Rows Read: 5, Read Time: 0, Transform Time: 0
Beginning processing data.
Beginning processing data.
Rows Read: 5, Read Time: 0, Transform Time: 0
Beginning processing data.
Elapsed time: 00:00:00.0521300
Finished writing 5 rows.
Writing completed.
  places_visited  xdatacat.London  xdatacat.Brunei  xdatacat.Paris  \
0         London              1.0              0.0             0.0   
1         Brunei              0.0              1.0             0.0   
2         London              1.0              0.0             0.0   
3          Paris              0.0              0.0             1.0   
4          Seria              0.0              0.0             0.0   

   xdatacat.Seria  
0             0.0  
1             0.0  
2             0.0  
3             0.0  
4             1.0