.. toctree:: :maxdepth: 2 :hidden: .. _bigmler-delete: Delete subcommand ----------------- You have seen that BigMLer is an agile tool that empowers you to create a great number of resources easily. This is a tremedous help, but it also can lead to a garbage-prone environment. To keep a control of each new created remote resource use the flag `--resources-log` followed by the name of the log file you choose. .. code-block:: bash bigmler --train data/iris.csv --resources-log my_log.log Each new resource created by that command will cause its id to be appended as a new line of the log file. BigMLer can help you as well in deleting these resources. Using the `delete` subcommand there are many options available. For instance, deleting a comma-separated list of ids .. code-block:: bash bigmler delete \ --ids source/50a2bb64035d0706db0006cc,dataset/50a1f441035d0706d9000371 deleting resources listed in a file .. code-block:: bash bigmler delete --from-file to_delete.log where `to_delete.log` contains a resource id per line. As we've previously seen, each BigMLer command execution generates a bunch of remote resources whose ids are stored in files located in a directory that can be set using the ``--output-dir`` option. The ``bigmler delete`` subcommand can retrieve the ids stored in such files by using the ``--from-dir`` option. .. code-block:: bash bigmler --train data/iris.csv --output my_BigMLer_output_dir bigmler delete --from-dir my_BigMLer_output_dir The last command will delete all the remote resources previously generated by the fist command by retrieving their ids from the files in ``my_BigMLer_output_dir`` directory. You can also delete resources based on the tags they are associated to .. code-block:: bash bigmler delete --all-tag my_tag or restricting the operation to a specific type .. code-block:: bash bigmler delete --source-tag my_tag bigmler delete --dataset-tag my_tag bigmler delete --model-tag my_tag bigmler delete --prediction-tag my_tag bigmler delete --evaluation-tag my_tag bigmler delete --ensemble-tag my_tag bigmler delete --batch-prediction-tag my_tag bigmler delete --cluster-tag my_tag bigmler delete --centroid-tag my_tag bigmler delete --batch-centroid-tag my_tag bigmler delete --anomaly-tag my_tag bigmler delete --anomaly-score-tag my_tag bigmler delete --batch-anomaly-score-tag my_tag bigmler delete --project-tag my_tag bigmler delete --logistic-regression-tag my_tag bigmler delete --linear-regression-tag my_tag bigmler delete --time-series-tag my_tag bigmler delete --deepnet-tag my_tag bigmler delete --topic-model-tag my_tag bigmler delete --topic-distribution-tag my_tag bigmler delete --association-tag my_tag You can also delete resources by date. The options ``--newer-than`` and ``--older-than`` let you specify a reference date. Resources created after and before that date respectively, will be deleted. Both options can be combined to set a range of dates. The allowed values are: - dates in a YYYY-MM-DD format - integers, that will be interpreted as number of days before now - resource id, the creation datetime of the resource will be used Thus, .. code-block:: bash bigmler delete --newer-than 2 will delete all resources created less than two days ago (now being 2014-03-23 14:00:00.00000, its creation time will be greater than 2014-03-21 14:00:00.00000). .. code-block:: bash bigmler delete --older-than 2014-03-20 --newer-than 2014-03-19 will delete all resources created during 2014, March the 19th (creation time between 2014-03-19 00:00:00 and 2014-03-20 00:00:00) and .. code-block:: bash bigmler delete --newer-than source/532db2b637203f3f1a000104 will delete all resources created after the ``source/532db2b637203f3f1a000104`` was created. You can also combine both types of options, to delete sources tagged as ``my_tag`` starting from a certain date on .. code-block:: bash bigmler delete --newer-than 2 --source-tag my_tag And finally, you can filter the type of resource to be deleted using the ``--resource-types`` option to specify a comma-separated list of resource types to be deleted .. code-block:: bash bigmler delete --older-than 2 --resource-types source,model will delete the sources and models created more than two days ago. Additionally, you can use the ``--resource-types`` option to tell which type of resources to exclude from deletion if the ``--exclude-types`` flag is added to the call. .. code-block:: bash bigmler delete --older-than 2 --resource-types source,model --exclude-types That command will delete all the resources that are older than two days except for sources and models. You can simulate the a delete subcommand using the ``--dry-run`` flag .. code-block:: bash bigmler delete --newer-than source/532db2b637203f3f1a000104 \ --source-tag my_source --dry-run The output for the command will be a list of resources that would be deleted if the ``--dry-run`` flag was removed. In this case, they will be sources that contain the tag ``my_source`` and were created after the one given as ``--newer-than`` value. The first 15 resources will be logged to console, and the complete list can be found in the ``bigmler_sessions`` file. A similar option that does not delete the resources immediately is ``--bin``. .. code-block:: bash bigmler delete --newer-than 3 --resource-types source \ --source-tag my_source --bin By setting that flag, all the selected resources are moved to a newly created ``Trash bin`` project in your account. That allows the user to inspect the selected resources before deletion and delete them in an efficient way by deleting the ``Trash bin`` project. By default, only finished resources are selected to be deleted. If you want to delete other resources, you can select them by choosing their status: .. code-block:: bash bigmler delete --older-than 2 --status faulty would remove all failed resources created more than two days ago. Also, you can apply a filter based on the filters used in the API list query strings (see the `API documentation `_). .. code-block:: bash bigmler delete --filter "name__icontains=iris" Delete Subcommand Options ^^^^^^^^^^^^^^^^^^^^^^^^^ ========================================== ==================================== ``--ids`` *LIST_OF_IDS* Comma separated list of ids to be deleted ``--from-file`` *FILE_OF_IDS* Path to a file containing the resources' ids to be deleted ``--from-dir`` Path to a directory where BigMLer has stored its session data and created resources ``--all-tag`` *TAG* Retrieves resources that were tagged with tag to delete them ``--source-tag`` *TAG* Retrieves sources that were tagged with tag to delete them ``--dataset-tag`` *TAG* Retrieves datasets that were tagged with tag to delete them ``--model-tag`` *TAG* Retrieves models that were tagged with tag to delete them ``--prediction-tag`` *TAG* Retrieves predictions that were tagged with tag to delete them ``--evaluation-tag`` *TAG* Retrieves evaluations that were tagged with tag to delete them ``--ensemble-tag`` *TAG* Retrieves ensembles that were tagged with tag to delete them ``--batch-prediction-tag`` *TAG* Retrieves batch predictions that were tagged with tag to delete them ``--cluster-tag`` *TAG* Retrieves clusters that were tagged with tag to delete them ``--centroid-tag`` *TAG* Retrieves centroids that were tagged with tag to delete them ``--batch-centroid-tag`` *TAG* Retrieves batch centroids that were tagged with tag to delete them ``--anomaly-tag`` *TAG* Retrieves anomalies that were tagged with tag to delete them ``--anomaly-score-tag`` *TAG* Retrieves anomaly scores that were tagged with tag to delete them ``--batch-anomlay-score-tag`` *TAG* Retrieves batch anomaly scores that were tagged with tag to delete them ``--logistic-regression-tag`` *TAG* Retrieves logistic regressions that were tagged with tag to delete them ``--linear-regression-tag`` *TAG* Retrieves linear regressions that were tagged with tag to delete them ``--topic-model-tag`` *TAG* Retrieves topic models that were tagged with tag to delete them ``--topic-distribution-tag`` *TAG* Retrieves topic distributions that were tagged with tag to delete them ``--batch-topic-distribution-tag`` *TAG* Retrieves batch topic distributions that were tagged with tag to delete them ``--time-series-tag`` *TAG* Retrieves time series that were tagged with tag to delete them ``--forecast-tag`` *TAG* Retrieves forecasts that were tagged with tag to delete them ``--deepnet-tag`` *TAG* Retrieves deepnets that were tagged with tag to delete them ``--project`` *TAG* Retrieves projects that were tagged with tag to delete them ``--association`` *TAG* Retrieves associations that were tagged with tag to delete them ``--older-than`` *DATE* Retrieves resources created before the specified date. Date can be any YYYY-MM-DD string, an integer meaning the number of days before the current datetime or a resource id, meaning the creation datetime of the resource ``--newer-than`` *DATE* Retrieves resources created after the specified date. Date can be any YYYY-MM-DD string, an integer meaning the number of days before the current datetime or a resource id, meaning the creation datetime of the resource ``--resource-types`` Comma-separated list of types of resources to be deleted. Allowed values are source, dataset, model, ensemble, prediction, batch_prediction, cluster, centroid, batch_centroid, etc. ``--exclude-types`` When used together with ``resource-types``, the list of types provided will be excluded from deletion. Only the rest of resource types will be deleted. ``--filter`` *FILTER EXPRESSION* Filter expression as used in the API list calls query string ``--dry-run`` Delete simulation. No removal. ``--status`` Status codes used in the filter to retrieved the resources to be delete. The possible values are: finished, faulty, waiting, queued, started, in progress, summarized, uploading, unknown, runnable ========================================== ==================================== .. _bigmler-export: Export subcommand ----------------- The ``bigmler export`` subcommand is intended to help generating the code needed for the models in BigML to be integrated in other applications. To produce a prediction using a BigML model you just need a function that receives as argument the new test case data and returns this prediction (and a confidence). The `bigmler export` subcommand will retrieve the JSON information of your existing decision tree model in BigML and will generate from it this function code and store it in a file that can be imported or copied directly in your application. Obviously, the function syntax will depend on the model and the language used in your application, so these will be the options we need to provide: .. code-block:: bash bigmler export --model model/532db2b637203f3f1a001304 \ --language javascript --output-dir my_exports This command will create a javascript version of the function that produces the predictions and store it in a file named `model_532db2b637203f3f1a001304.js` (after the model ID) in the `my_exports` directory. Models can currently exported in `Python`, `Javascript` and `R`. For models whose fields are numeric or categorical, the command also supports creating `MySQL` functions and `Tableau` separate expressions for both the prediction and the confidence. You can also generate the code for all the models in an ensemble in a single bigmler export command using the `--ensemble` option followed by the corresponding ensemble ID. The code for each model will be stored in a separate file, named after the model ID and transforming the slash into an underscore. .. code-block:: bash bigmler export --ensemble ensemble/532db2b637203f3f1a001307 \ --language javascript --output-dir my_ensemble