TabularDatasetFactory Kelas
Berisi metode untuk membuat himpunan data tabular untuk Azure Machine Learning.
TabularDataset dibuat menggunakan metode from_*
di kelas ini, misalnya, metode from_delimited_files.
Untuk informasi selengkapnya tentang bekerja dengan himpunan data tabular, lihat buku catatan https://aka.ms/tabulardataset-samplenotebook.
- Warisan
-
builtins.objectTabularDatasetFactory
Konstruktor
TabularDatasetFactory()
Metode
from_delimited_files |
Buat TabularDataset untuk mewakili data tabular dalam file pemisah (misalnya.CSV dan TSV). |
from_json_lines_files |
Buat TabularDataset untuk mewakili data tabular dalam file JSON Lines (http://jsonlines.org/). |
from_parquet_files |
Buat TabularDataset untuk mewakili data tabular dalam file Parquet. |
from_sql_query |
Buat TabularDataset untuk mewakili data tabular dalam database SQL. |
register_dask_dataframe |
Catatan Ini adalah metode eksperimental, dan dapat berubah kapan saja. Lihat https://aka.ms/azuremlexperimental untuk mengetahui informasi selengkapnya. Membuat himpunan data dari kerangka data dask. |
register_pandas_dataframe |
Membuat himpunan data dari kerangka data pandas. |
register_spark_dataframe |
Catatan Ini adalah metode eksperimental, dan dapat berubah kapan saja. Lihat https://aka.ms/azuremlexperimental untuk mengetahui informasi selengkapnya. Membuat himpunan data dari kerangka data spark. |
from_delimited_files
Buat TabularDataset untuk mewakili data tabular dalam file pemisah (misalnya.CSV dan TSV).
static from_delimited_files(path, validate=True, include_path=False, infer_column_types=True, set_column_types=None, separator=',', header=True, partition_format=None, support_multi_line=False, empty_as_string=False, encoding='utf8')
Parameter
Jalur ke file sumber, yang dapat berupa nilai tunggal atau daftar string url (http[s]|abfs[s]|wasb[s]), DataPath objek, atau tuple dari Datastore dan jalur relatif. Perhatikan bahwa daftar jalur tidak dapat menyertakan url dan datastore secara bersamaan.
- validate
- bool
Boolean untuk memvalidasi apakah data dapat dimuat dari himpunan data yang dikembalikan. Default ke True. Validasi mengharuskan sumber data dapat diakses dari komputasi saat ini. Untuk menonaktifkan validasi, "infer_column_types" juga perlu diatur ke False.
- include_path
- bool
Boolean untuk menyimpan informasi jalur sebagai kolom dalam himpunan data. Default ke False. Ini berguna saat membaca beberapa file, dan ingin tahu file mana yang berasal dari catatan tertentu, atau untuk menyimpan informasi yang berguna di jalur file.
- infer_column_types
- bool
Boolean untuk menyimpulkan jenis data kolom. Default ke True. Inferensi jenis mengharuskan sumber data dapat diakses dari komputasi saat ini. Saat ini inferensi jenis hanya akan menarik 200 baris pertama. Jika data berisi beberapa jenis nilai, lebih baik menyediakan jenis yang diinginkan untuk mengambil alih melalui argumen set_column_types. Periksa bagian Komentar untuk sampel kode tentang set_column_types.
Kamus untuk mengatur jenis data kolom, di mana kunci adalah nama kolom dan nilai adalah DataType.
- header
- bool atau PromoteHeadersBehavior
Mengontrol cara header kolom dipromosikan saat membaca dari file. Default ke True untuk semua file yang memiliki header yang sama. File akan dibaca sebagai tidak memiliki header Saat header=False. Opsi lain dapat ditentukan dengan menggunakan nilai enumerasi PromoteHeadersBehavior.
- partition_format
- str
Tentukan format partisi jalur. Default ke Tidak Ada. Informasi partisi dari setiap jalur akan diekstrak ke dalam kolom berdasarkan format yang ditentukan. Bagian format '{column_name}' membuat kolom string, dan '{column_name:yyyy/MM/dd/HH/mm/ss}' membuat kolom tanggalwaktu, di mana 'yyyy', 'MM', 'dd', 'HH', 'mm' dan 'ss' digunakan untuk mengekstrak tahun, bulan, hari, jam, menit, dan detik untuk jenis tanggalwaktu. Format harus dimulai dari posisi kunci partisi pertama hingga akhir jalur file. Misalnya, jalur yang diberikan '../Accounts/2019/01/01/data.csv' partisinya menurut nama dan waktu departemen, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.csv' membuat kolom untai (karakter) 'Department' dengan nilai 'Accounts' dan kolom tanggalwaktu 'PartitionDate' dengan nilai '2019-01-01'.
- support_multi_line
- bool
Secara default (support_multi_line=False), semua ganti baris, termasuk nilai bidang kuotasi, akan diinterpretasikan sebagai pemisah rekaman. Membaca data dengan cara ini lebih cepat dan lebih dioptimalkan untuk eksekusi bersamaan pada beberapa inti CPU. Namun, ini dapat mengakibatkan diam-diam menghasilkan lebih banyak rekaman dengan nilai bidang yang tidak sejajar. Ini harus diatur ke True ketika file yang dibatasi diketahui berisi ganti baris yang dikutip.
Mengingat file csv ini misalnya, data akan dibaca secara berbeda berdasarkan support_multi_line.
A,B,C A1,B1,C1 A2,"B 2",C2
from azureml.core import Dataset, Datastore
from azureml.data.datapath import DataPath
# default behavior: support_multi_line=False
dataset = Dataset.Tabular.from_delimited_files(path=datastore_path)
print(dataset.to_pandas_dataframe())
# A B C
# 0 A1 B1 C1
# 1 A2 B None
# 2 2" C2 None
# to handle quoted line breaks
dataset = Dataset.Tabular.from_delimited_files(path=datastore_path,
support_multi_line=True)
print(dataset.to_pandas_dataframe())
# A B C
# 0 A1 B1 C1
# 1 A2 B\r\n2 C2
- empty_as_string
- bool
Tentukan apakah nilai bidang kosong harus dimuat sebagai untai (karakter) kosong. Default (False) akan membaca nilai bidang kosong sebagai null. Meneruskan ini sebagai True akan membaca nilai bidang kosong sebagai untai (karakter) kosong. Jika nilai dikonversi ke numerik atau tanggalwaktu maka ini tidak berpengaruh, karena nilai kosong akan dikonversi menjadi null.
- encoding
- str
Tentukan pengodean file. Pengodean yang didukung adalah 'utf8', 'iso88591', 'latin1', 'ascii', 'utf16', 'utf32', 'utf8bom' and 'windows1252'
Mengembalikan
Kembalikan objek TabularDataset.
Tipe hasil
Keterangan
from_delimited_files memuat objek kelasTabularDataset, yang mendefinisikan operasi untuk memuat data dari file pemisah ke dalam representasi tabular.
Agar data dapat diakses oleh Azure Machine Learning, file yang dibatasi yang ditentukan oleh jalur harus terletak di atau di Datastore belakang url web publik atau url Blob, ADLS Gen1, dan ADLS Gen2. Token AAD pengguna akan digunakan dalam buku catatan atau program python lokal jika langsung memanggil salah satu fungsi ini: FileDataset.mount FileDataset.download FileDataset.to_path TabularDataset.to_pandas_dataframe TabularDataset.to_dask_dataframe TabularDataset.to_spark_dataframe TabularDataset.to_parquet_files TabularDataset.to_csv_files identitas target komputasi akan digunakan dalam pekerjaan yang dikirimkan oleh Experiment.submit untuk autentikasi akses data. Pelajari selengkapnya:https://aka.ms/data-access
Jenis data kolom secara default disimpulkan dari data di file pemisah. Memberikan set_column_types akan mengambil alih jenis data untuk kolom yang ditentukan di TabularDataset yang dikembalikan.
from azureml.core import Dataset, Datastore
# create tabular dataset from a single file in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_1 = Dataset.Tabular.from_delimited_files(path=(datastore,'weather/2018/11.csv'))
# create tabular dataset from a single directory in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_2 = Dataset.Tabular.from_delimited_files(path=(datastore,'weather/'))
# create tabular dataset from all csv files in the directory
tabular_dataset_3 = Dataset.Tabular.from_delimited_files(path=(datastore,'weather/**/*.csv'))
# create tabular dataset from multiple paths
data_paths = [(datastore, 'weather/2018/11.csv'), (datastore, 'weather/2018/12.csv')]
tabular_dataset_4 = Dataset.Tabular.from_delimited_files(path=data_paths)
# create tabular dataset from url
tabular_dataset_5 = Dataset.Tabular.from_delimited_files(path='https://url/weather/2018/12.csv')
# use `set_column_types` to set column data types
from azureml.data import DataType
data_types = {
'ID': DataType.to_string(),
'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
'Count': DataType.to_long(),
'Latitude': DataType.to_float(),
'Found': DataType.to_bool()
}
web_path = [
'https://url/weather/2018/11.csv',
'https://url/weather/2018/12.csv'
]
tabular = Dataset.Tabular.from_delimited_files(path=web_path, set_column_types=data_types)
from_json_lines_files
Buat TabularDataset untuk mewakili data tabular dalam file JSON Lines (http://jsonlines.org/).
static from_json_lines_files(path, validate=True, include_path=False, set_column_types=None, partition_format=None, invalid_lines='error', encoding='utf8')
Parameter
Jalur ke file sumber, yang dapat berupa nilai tunggal atau daftar string url (http[s]|abfs[s]|wasb[s]), DataPath objek, atau tuple dari Datastore dan jalur relatif. Perhatikan bahwa daftar jalur tidak dapat menyertakan url dan datastore secara bersamaan.
- validate
- bool
Boolean untuk memvalidasi apakah data dapat dimuat dari himpunan data yang dikembalikan. Default ke True. Validasi mengharuskan sumber data dapat diakses dari komputasi saat ini.
- include_path
- bool
Boolean untuk menyimpan informasi jalur sebagai kolom dalam himpunan data. Default ke False. Ini berguna saat membaca beberapa file, dan ingin tahu file mana yang berasal dari catatan tertentu, atau untuk menyimpan informasi yang berguna di jalur file.
Kamus untuk mengatur jenis data kolom, di mana kunci adalah nama kolom dan nilai adalah DataType
- partition_format
- str
Tentukan format partisi jalur. Default ke Tidak Ada. Informasi partisi dari setiap jalur akan diekstrak ke dalam kolom berdasarkan format yang ditentukan. Bagian format '{column_name}' membuat kolom string, dan '{column_name:yyyy/MM/dd/HH/mm/ss}' membuat kolom tanggalwaktu, di mana 'yyyy', 'MM', 'dd', 'HH', 'mm' dan 'ss' digunakan untuk mengekstrak tahun, bulan, hari, jam, menit, dan detik untuk jenis tanggalwaktu. Format harus dimulai dari posisi kunci partisi pertama hingga akhir jalur file. Misalnya, jalur yang diberikan '../Accounts/2019/01/01/data.jsonl' partisinya adalah menurut nama dan waktu departemen, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/data.jsonl' membuat kolom untai (karakter) 'Department' dengan nilai 'Accounts' dan kolom tanggalwaktu 'PartitionDate' dengan nilai '2019-01-01'.
- invalid_lines
- str
Cara menangani baris yang merupakan json tidak valid. Nilai yang didukung adalah 'error' dan 'drop'.
- encoding
- str
Tentukan pengodean file. Pengodean yang didukung adalah 'utf8', 'iso88591', 'latin1', 'ascii', 'utf16', 'utf32', 'utf8bom' and 'windows1252'
Mengembalikan
Kembalikan objek TabularDataset.
Tipe hasil
Keterangan
from_json_lines_files membuat objek kelas TabularDataset, yang mendefinisikan operasi untuk memuat data dari file JSON Lines ke dalam representasi tabular.
Agar data dapat diakses oleh Azure Machine Learning, file JSON Lines yang ditentukan oleh jalur harus berada di atau di Datastore belakang url web publik atau url Blob, ADLS Gen1, dan ADLS Gen2. Token AAD pengguna akan digunakan dalam buku catatan atau program python lokal jika langsung memanggil salah satu fungsi ini: FileDataset.mount FileDataset.download FileDataset.to_path TabularDataset.to_pandas_dataframe TabularDataset.to_dask_dataframe TabularDataset.to_spark_dataframe TabularDataset.to_parquet_files TabularDataset.to_csv_files identitas target komputasi akan digunakan dalam pekerjaan yang dikirimkan oleh Experiment.submit untuk autentikasi akses data. Pelajari selengkapnya:https://aka.ms/data-access
Jenis data kolom dibaca dari jenis data yang disimpan data file JSON Lines. Memberikan set_column_types akan mengambil alih jenis data untuk kolom yang ditentukan di TabularDataset yang dikembalikan.
from azureml.core import Dataset, Datastore
# create tabular dataset from a single file in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_1 = Dataset.Tabular.from_json_lines_files(path=(datastore,'weather/2018/11.jsonl'))
# create tabular dataset from a single directory in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_2 = Dataset.Tabular.from_json_lines_files(path=(datastore,'weather/'))
# create tabular dataset from all jsonl files in the directory
tabular_dataset_3 = Dataset.Tabular.from_json_lines_files(path=(datastore,'weather/**/*.jsonl'))
# create tabular dataset from multiple paths
data_paths = [(datastore, 'weather/2018/11.jsonl'), (datastore, 'weather/2018/12.jsonl')]
tabular_dataset_4 = Dataset.Tabular.from_json_lines_files(path=data_paths)
# create tabular dataset from url
tabular_dataset_5 = Dataset.Tabular.from_json_lines_files(path='https://url/weather/2018/12.jsonl')
# use `set_column_types` to set column data types
from azureml.data import DataType
data_types = {
'ID': DataType.to_string(),
'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
'Count': DataType.to_long(),
'Latitude': DataType.to_float(),
'Found': DataType.to_bool()
}
web_path = [
'https://url/weather/2018/11.jsonl',
'https://url/weather/2018/12.jsonl'
]
tabular = Dataset.Tabular.from_json_lines_files(path=web_path, set_column_types=data_types)
from_parquet_files
Buat TabularDataset untuk mewakili data tabular dalam file Parquet.
static from_parquet_files(path, validate=True, include_path=False, set_column_types=None, partition_format=None)
Parameter
Jalur ke file sumber, yang dapat berupa nilai tunggal atau daftar string url (http[s]|abfs[s]|wasb[s]), DataPath objek, atau tuple dari Datastore dan jalur relatif. Perhatikan bahwa daftar jalur tidak dapat menyertakan url dan datastore secara bersamaan.
- validate
- bool
Boolean untuk memvalidasi apakah data dapat dimuat dari himpunan data yang dikembalikan. Default ke True. Validasi mengharuskan sumber data dapat diakses dari komputasi saat ini.
- include_path
- bool
Boolean untuk menyimpan informasi jalur sebagai kolom dalam himpunan data. Default ke False. Ini berguna saat membaca beberapa file, dan ingin tahu file mana yang berasal dari catatan tertentu, atau untuk menyimpan informasi yang berguna di jalur file.
Kamus untuk mengatur jenis data kolom, di mana kunci adalah nama kolom dan nilai adalah DataType.
- partition_format
- str
Tentukan format partisi jalur. Default ke Tidak Ada. Informasi partisi dari setiap jalur akan diekstrak ke dalam kolom berdasarkan format yang ditentukan. Bagian format '{column_name}' membuat kolom string, dan '{column_name:yyyy/MM/dd/HH/mm/ss}' membuat kolom tanggalwaktu, di mana 'yyyy', 'MM', 'dd', 'HH', 'mm' dan 'ss' digunakan untuk mengekstrak tahun, bulan, hari, jam, menit, dan detik untuk jenis tanggalwaktu. Format harus dimulai dari posisi kunci partisi pertama hingga akhir jalur file. Misalnya, jalur yang diberikan '../Accounts/2019/01/01/data.parquet' di mana partisinya adalah menurut nama departemen dan waktu, partition_format='/{Department}/{PartitionDate:yyyy/MM/dd}/ data.parquet' membuat kolom untai (karakter) 'Department' dengan nilai 'Accounts' dan kolom tanggalwaktu 'PartitionDate' dengan nilai '2019-01-01'.
Mengembalikan
Kembalikan objek TabularDataset.
Tipe hasil
Keterangan
from_parquet_files membuat objek kelas TabularDataset, yang mendefinisikan operasi untuk memuat data dari file Parquet ke dalam representasi tabular.
Agar data dapat diakses oleh Azure Machine Learning, file Parquet yang ditentukan oleh jalur harus terletak di atau di Datastore belakang url web publik atau url Blob, ADLS Gen1, dan ADLS Gen2. Token AAD pengguna akan digunakan dalam buku catatan atau program python lokal jika langsung memanggil salah satu fungsi ini: FileDataset.mount FileDataset.download FileDataset.to_path TabularDataset.to_pandas_dataframe TabularDataset.to_dask_dataframe TabularDataset.to_spark_dataframe TabularDataset.to_parquet_files TabularDataset.to_csv_files identitas target komputasi akan digunakan dalam pekerjaan yang dikirimkan oleh Experiment.submit untuk autentikasi akses data. Pelajari selengkapnya:https://aka.ms/data-access
Jenis data kolom dibaca dari jenis data yang disimpan dalam file Parquet. Memberikan set_column_types akan mengambil alih jenis data untuk kolom yang ditentukan di TabularDataset yang dikembalikan.
# create tabular dataset from a single file in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_1 = Dataset.Tabular.from_parquet_files(path=(datastore,'weather/2018/11.parquet'))
# create tabular dataset from a single directory in datastore
datastore = Datastore.get(workspace, 'workspaceblobstore')
tabular_dataset_2 = Dataset.Tabular.from_parquet_files(path=(datastore,'weather/'))
# create tabular dataset from all parquet files in the directory
tabular_dataset_3 = Dataset.Tabular.from_parquet_files(path=(datastore,'weather/**/*.parquet'))
# create tabular dataset from multiple paths
data_paths = [(datastore, 'weather/2018/11.parquet'), (datastore, 'weather/2018/12.parquet')]
tabular_dataset_4 = Dataset.Tabular.from_parquet_files(path=data_paths)
# create tabular dataset from url
tabular_dataset_5 = Dataset.Tabular.from_parquet_files(path='https://url/weather/2018/12.parquet')
# use `set_column_types` to set column data types
from azureml.data import DataType
data_types = {
'ID': DataType.to_string(),
'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
'Count': DataType.to_long(),
'Latitude': DataType.to_float(),
'Found': DataType.to_bool()
}
web_path = [
'https://url/weather/2018/11.parquet',
'https://url/weather/2018/12.parquet'
]
tabular = Dataset.Tabular.from_parquet_files(path=web_path, set_column_types=data_types)
from_sql_query
Buat TabularDataset untuk mewakili data tabular dalam database SQL.
static from_sql_query(query, validate=True, set_column_types=None, query_timeout=30)
Parameter
- validate
- bool
Boolean untuk memvalidasi apakah data dapat dimuat dari himpunan data yang dikembalikan. Default ke True. Validasi mengharuskan sumber data dapat diakses dari komputasi saat ini.
Kamus untuk mengatur jenis data kolom, di mana kunci adalah nama kolom dan nilai adalah DataType.
- query_timeout
Atur waktu tunggu (dalam detik) sebelum menghentikan upaya untuk mengeksekusi perintah dan menghasilkan kesalahan. Defaultnya adalah 30 detik.
Mengembalikan
Kembalikan objek TabularDataset.
Tipe hasil
Keterangan
from_sql_query membuat objek kelas TabularDataset, yang mendefinisikan operasi untuk memuat data dari database SQL ke dalam representasi tabular. Saat ini, kami hanya mendukung MSSQLDataSource.
Agar data dapat diakses oleh Azure Machine Learning, database SQL yang ditentukan oleh query
harus berada di Datastore dan jenis penyimpanan data harus dari jenis SQL.
Jenis data kolom dibaca dari jenis data dalam hasil kueri SQL. Menyediakan set_column_types
akan mengambil alih jenis data untuk kolom yang ditentukan dalam TabularDataset yang dikembalikan.
from azureml.core import Dataset, Datastore
from azureml.data.datapath import DataPath
# create tabular dataset from a SQL database in datastore
datastore = Datastore.get(workspace, 'mssql')
query = DataPath(datastore, 'SELECT * FROM my_table')
tabular = Dataset.Tabular.from_sql_query(query, query_timeout=10)
df = tabular.to_pandas_dataframe()
# use `set_column_types` to set column data types
from azureml.data import DataType
data_types = {
'ID': DataType.to_string(),
'Date': DataType.to_datetime('%d/%m/%Y %I:%M:%S %p'),
'Count': DataType.to_long(),
'Latitude': DataType.to_float(),
'Found': DataType.to_bool()
}
tabular = Dataset.Tabular.from_sql_query(query, set_column_types=data_types)
register_dask_dataframe
Catatan
Ini adalah metode eksperimental, dan dapat berubah kapan saja. Lihat https://aka.ms/azuremlexperimental untuk mengetahui informasi selengkapnya.
Membuat himpunan data dari kerangka data dask.
static register_dask_dataframe(dataframe, target, name, description=None, tags=None, show_progress=True)
Parameter
- dataframe
- <xref:dask.dataframe.core.DataFrame>
Diperlukan, dask kerangka data yang akan diunggah.
Diperlukan, jalur datastore tempat tujuan data kerangka data parquet akan diunggah. Folder panduan akan dibuat di bawah jalur target untuk menghindari konflik.
Opsional. Kamus tag nilai kunci untuk memberikan himpunan data. Default ke None.
- show_progress
- bool
Opsional, menunjukkan apakah akan menampilkan kemajuan unggahan di konsol. Defaultnya diatur ke True.
Mengembalikan
Himpunan data yang terdaftar.
Tipe hasil
register_pandas_dataframe
Membuat himpunan data dari kerangka data pandas.
static register_pandas_dataframe(dataframe, target, name, description=None, tags=None, show_progress=True, row_group_size=None, make_target_path_unique=True)
Parameter
Diperlukan, jalur datastore tempat tujuan data kerangka data parquet akan diunggah. Folder panduan akan dibuat di bawah jalur target untuk menghindari konflik.
Opsional. Kamus tag nilai kunci untuk memberikan himpunan data. Default ke None.
- show_progress
- bool
Opsional, menunjukkan apakah akan menampilkan kemajuan unggahan di konsol. Defaultnya diatur ke True.
- row_group_size
Pilihan. Ukuran maksimum grup baris yang akan digunakan saat menulis file parket. Default ke Tidak Ada.
- make_target_path_unique
Opsional, menunjukkan apakah subfolder unik harus dibuat di target. Defaultnya diatur ke True.
Mengembalikan
Himpunan data terdaftar.
Tipe hasil
register_spark_dataframe
Catatan
Ini adalah metode eksperimental, dan dapat berubah kapan saja. Lihat https://aka.ms/azuremlexperimental untuk mengetahui informasi selengkapnya.
Membuat himpunan data dari kerangka data spark.
static register_spark_dataframe(dataframe, target, name, description=None, tags=None, show_progress=True)
Parameter
Diperlukan, jalur datastore tempat tujuan data kerangka data parquet akan diunggah. Folder panduan akan dibuat di bawah jalur target untuk menghindari konflik.
Opsional. Kamus tag nilai kunci untuk memberikan himpunan data. Default ke None.
- show_progress
- bool
Opsional, menunjukkan apakah akan menampilkan kemajuan unggahan di konsol. Defaultnya diatur ke True.
Mengembalikan
Himpunan data yang terdaftar.
Tipe hasil
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk