Skip to content

Instantly share code, notes, and snippets.

@klesouza
Created July 31, 2020 12:39
Show Gist options
  • Save klesouza/c23781677b03f28128996075ba3e8767 to your computer and use it in GitHub Desktop.
Save klesouza/c23781677b03f28128996075ba3e8767 to your computer and use it in GitHub Desktop.
Loading Parquet files using ML.NET internal ParquetLoader (Reflection)
public static IDataView LoadParquetFile(string path, IHostEnvironment ctx)
{
var parquetAssembly = Assembly.Load("Microsoft.ML.Parquet");
var parquetLoarderType = parquetAssembly.GetType("Microsoft.ML.Data.ParquetLoader");
var parquetArgsType = parquetLoarderType.GetNestedType("Arguments");
var methods = parquetLoarderType.GetConstructor(new[] { typeof(IHostEnvironment), parquetArgsType, typeof(string) });
var p = methods.Invoke(new object[] { ctx, parquetArgsType.GetConstructors()[0].Invoke(null), path });
return (IDataView)p;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment