{ "info": { "author": "Piccolo Lab", "author_email": "stephen_piccolo@byu.edu", "bugtrack_url": null, "classifiers": [], "description": "# expressionable-cli\nThe official command-line interface for the [expressionable](https://github.com/srp33/expressionable) Python module.\nFrom the command-line you can easily take advantage of ExpressionAble's features, such as:\n* Transformation of tabular data sets from one format to another.\n* Querying large data sets to filter out useful data.\n* Selection of additional columns/features to include in the resulting data set.\n* Option to gzip resulting data sets, as well as the ability to read gzipped files.\n* Merging multiple data files of various types into a single file. \n\n## Install\n\n```bash\npip3 install expressionable-cli\n```\n\n## Basic Use\nTo view instructions for use at any time, simply type the command `expressionable --help` or `ea --help` into the terminal at any time.\nDoing so will bring up the following:\n```bash\n$ expressionable --help\nusage: expressionable [-h] [-i File_Type] [-o File_Type] [-t] [-f \"FILTER\"]\n [-c COLUMNS] [-a] [-g] [-s SET_INDEX]\n input_file output_file\n\nImport, filter, and transform data into a format of your choice!\n\npositional arguments:\n input_file Data file to be imported, filtered, and/or transformed\n output_file File path to which results are exported\n\noptional arguments:\n -h, --help show this help message and exit\n -i File_Type, --input_file_type File_Type\n Type of file to be imported. If not specified, file\n type will be determined by the file extension given.\n Available choices are: CSV, TSV, JSON, Excel, HDF5,\n Parquet, MsgPack, Stata, Pickle, SQLite, ARFF, GCT,\n Kallisto, GEO, Salmon\n -o File_Type, --output_file_type File_Type\n Type of file to which results are exported. If not\n specified, file type will be determined by the file\n extension given. Available choices are: CSV, TSV,\n JSON, Excel, HDF5, Parquet, MsgPack, Stata, Pickle,\n SQLite, ARFF, GCT, RMarkdown, JupyterNotebook\n -t, --transpose Transpose index and columns in the output file\n -f \"FILTER\", --filter \"FILTER\"\n Filter data using python logical syntax. Your filter\n must be surrounded by quotes. For example: -f\n \"ColumnName1 > 12.5 and (ColumnName2 == 'x' or\n ColumnName2 =='y')\"\n -c COLUMNS, --columns COLUMNS\n List of additional column names to include in the\n output file. Column names must be seperated by commas\n and without spaces. For example: -c\n ColumnName1,ColumnName2,ColumnName3\n -a, --all_columns Includes all columns in the output file. Overrides the\n \"--columns\" flag\n -g, --gzip Gzips the output file\n -s SET_INDEX, --set_index SET_INDEX\n Sets the given column to become the index column,\n where appropriate.\n\n```\nThere are only two required arguments when using the `expressionable` command: the path to the file you wish to read,\nand the path to a file you wish to produce. For example, if you had an Excel file called \"input_file.xlsx\" and you \nsimply wanted to convert it to a TSV file called \"output_file.tsv\", you would enter \n`expressionable input_file.xlsx output_file.tsv` into the terminal to execute the conversion.\n\nExpressionAble automatically infers both the format of the input file and the format of the file you wish to create, based\non the extension on the file path. If for some reason the extensions are irregular or missing, you can specify the \nformat of the input file using the `--input_file_type` flag, followed by the name of the file type,\nand specify the format of the output file using the `--output_file_type` flag, followed by the name of the file type.\n\nApplying filters during the transformation uses the `--filter` flag, followed by a string query in double quotations.\nSyntax for such a query uses basic Python logical syntax, as shown by the following example:\n`--filter \"ColumnName1 > 12.5 and (ColumnName2 == 'x' or ColumnName2 =='y')\"` \n\nApplying filters means that only those columns that are filtered on (in the above example, ColumnName1 and ColumnName2)\nwill appear in the output file. If you wish to include additional columns, you can do so with the `--columns` flag \nfollowed by a list of comma-separated column names. If you wish to include all columns in the output, you can simply\nuse the `--all_columns` flag.\n\n## Merging Files\nTyping `merge -h` or `eamerge -h` will bring up the help menu for information on how to merge data files of various types together.\n\n```bash\n~$ merge -h\nusage: merge [-h] [-i INPUT_FILES [INPUT_FILES ...]] [-o OUTPUT_FILE]\n [-t File_Type] [-g] [-c ON_COLUMN] [--how HOW]\n\nMerge data files of various types into a single file!\n\noptional arguments:\n -h, --help show this help message and exit\n -i INPUT_FILES [INPUT_FILES ...], --input_files INPUT_FILES [INPUT_FILES ...]\n List of files that will be merged together. Files must\n have appropriate extensions to be recognized properly.\n -o OUTPUT_FILE, --output_file OUTPUT_FILE\n File path to which results are exported\n -t File_Type, --output_file_type File_Type\n Type of file to which results are exported. If not\n specified, file type will be determined by the file\n extension given. Available choices are: CSV, TSV,\n JSON, Excel, HDF5, Parquet, MsgPack, Stata, Pickle,\n SQLite, ARFF, GCT, RMarkdown, JupyterNotebook\n -g, --gzip Gzips the output file\n -c ON_COLUMN, --on_column ON_COLUMN\n Merge files on a specific column\n --how HOW Type of merge to perform. Options are left, right,\n inner, or outer, with inner being default behavior.\n```\n\n\n## Currently Supported Formats\n#### Input Formats:\n* CSV\n* TSV\n* JSON\n* Excel\n* HDF5\n* Parquet\n* MsgPack\n* Stata\n* Pickle\n* SQLite\n* ARFF\n* GCT\n* GCTX\n* PDF\n* StarReads\n* Kallisto\n* GEO\n\n#### Output Formats:\n* CSV \n* TSV\n* JSON\n* Excel\n* HDF5\n* Parquet\n* MsgPack\n* Stata \n* Pickle\n* SQLite \n* ARFF \n* GCT \n* RMarkdown \n* JupyterNotebook\n\n## Future Formats to Support\nWe are working hard to expand ExpressionAble to work with even more file formats! Expect the following formats to be \nincluded in future releases:\n* Fixed-width files (fwf)\n* Genomic Data Commons clinical XML\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/srp33/ExpressionAble-CLI", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "expressionable-cli", "package_url": "https://pypi.org/project/expressionable-cli/", "platform": "", "project_url": "https://pypi.org/project/expressionable-cli/", "project_urls": { "Homepage": "https://github.com/srp33/ExpressionAble-CLI" }, "release_url": "https://pypi.org/project/expressionable-cli/1.2/", "requires_dist": [ "expressionable (>=1.2)", "pandas" ], "requires_python": "", "summary": "A command-line tool for transforming large data sets", "version": "1.2" }, "last_serial": 5577921, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "095f7cae73df432a4bf46d0f817793c7", "sha256": "970de6ce64e3bba03e941e62f416848c7dc15d751cb7a782fa1a9550dc3f1192" }, "downloads": -1, "filename": "expressionable_cli-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "095f7cae73df432a4bf46d0f817793c7", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8790, "upload_time": "2019-04-13T19:41:05", "url": "https://files.pythonhosted.org/packages/be/da/c55fc0e7170d2286d79414c6a818b8893dd91b4fa45b35cc98b6594cd224/expressionable_cli-1.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "313b3f273ada8b99b79561ee9fd1cb30", "sha256": "bbe2d8f84f2ed1d4abb9e4bbd4f9631ed1f381fab2255478cf27aabf0bc9790f" }, "downloads": -1, "filename": "expressionable-cli-1.0.0.tar.gz", "has_sig": false, "md5_digest": "313b3f273ada8b99b79561ee9fd1cb30", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6685, "upload_time": "2019-04-13T19:41:07", "url": "https://files.pythonhosted.org/packages/c9/67/4712ebf29bef0c3ec31cc085fac09c609e6e306c92e4d23da83d9b20846e/expressionable-cli-1.0.0.tar.gz" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "7807f1284d1af1040bc49bfa78b41cf1", "sha256": "7118d9c2a3952ff8fab8639bd081612f24afda6963fbb4bcc7157e795adf7187" }, "downloads": -1, "filename": "expressionable_cli-1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7807f1284d1af1040bc49bfa78b41cf1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9032, "upload_time": "2019-04-24T16:24:47", "url": "https://files.pythonhosted.org/packages/55/8f/b91cda90a1b15b69934cba4f1332d6507577f8996cca579cb72264fc0696/expressionable_cli-1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "54037c2e91365e3d74d6ec6ccd17f3a6", "sha256": "863929461ccb95502dc66cf1868a18426e62bd20967a980cd3eae0aa78befd29" }, "downloads": -1, "filename": "expressionable-cli-1.1.tar.gz", "has_sig": false, "md5_digest": "54037c2e91365e3d74d6ec6ccd17f3a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6913, "upload_time": "2019-04-24T16:24:49", "url": "https://files.pythonhosted.org/packages/3d/b0/34d29a3e8b930f6d25d3d31e7fe38dd7bc744cab3c964d9e656d6275bce5/expressionable-cli-1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "981a4a2b6917452bb85dd97da58af791", "sha256": "872d758e5b12fa79b11ecade5e225eafab6b0ec50be79bac4dbf806067c3426d" }, "downloads": -1, "filename": "expressionable_cli-1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "981a4a2b6917452bb85dd97da58af791", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9231, "upload_time": "2019-04-26T00:36:48", "url": "https://files.pythonhosted.org/packages/c9/20/3ff109cb95a1be7420c6c1ebabf5698f3ab4031ff22b418303beb56d7f29/expressionable_cli-1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "067a640a970105a5b56a357405690b65", "sha256": "e7d70e8354af6b1448171c0c321eac68c211d9da64e52df5e9d785bdddc97038" }, "downloads": -1, "filename": "expressionable-cli-1.2.tar.gz", "has_sig": false, "md5_digest": "067a640a970105a5b56a357405690b65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7175, "upload_time": "2019-04-26T00:36:50", "url": "https://files.pythonhosted.org/packages/2d/ac/263dc52bbb6b675312a2ce0ef71e4e03ed4537e4b39d7ce84085ecc158e6/expressionable-cli-1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "981a4a2b6917452bb85dd97da58af791", "sha256": "872d758e5b12fa79b11ecade5e225eafab6b0ec50be79bac4dbf806067c3426d" }, "downloads": -1, "filename": "expressionable_cli-1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "981a4a2b6917452bb85dd97da58af791", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9231, "upload_time": "2019-04-26T00:36:48", "url": "https://files.pythonhosted.org/packages/c9/20/3ff109cb95a1be7420c6c1ebabf5698f3ab4031ff22b418303beb56d7f29/expressionable_cli-1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "067a640a970105a5b56a357405690b65", "sha256": "e7d70e8354af6b1448171c0c321eac68c211d9da64e52df5e9d785bdddc97038" }, "downloads": -1, "filename": "expressionable-cli-1.2.tar.gz", "has_sig": false, "md5_digest": "067a640a970105a5b56a357405690b65", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7175, "upload_time": "2019-04-26T00:36:50", "url": "https://files.pythonhosted.org/packages/2d/ac/263dc52bbb6b675312a2ce0ef71e4e03ed4537e4b39d7ce84085ecc158e6/expressionable-cli-1.2.tar.gz" } ] }