de-intern-guide/qsv/qsv-cli/index.html
github-actions[bot] 22a9920e2d deploy: da88b1d878
2025-09-05 19:20:29 +00:00

16 lines
No EOL
20 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper docs-doc-page docs-version-current plugin-docs plugin-id-default docs-doc-id-qsv/qsv-cli">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v2.4.1">
<title data-rh="true">⚡ qsv | Intern Onboarding Guide</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:image" content="https://dathere.github.io/de-intern-guide/img/datHere-logo.png"><meta data-rh="true" name="twitter:image" content="https://dathere.github.io/de-intern-guide/img/datHere-logo.png"><meta data-rh="true" property="og:url" content="https://dathere.github.io/de-intern-guide/qsv/qsv-cli"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="⚡ qsv | Intern Onboarding Guide"><meta data-rh="true" name="description" content="Meet qsv, your new command line tool for data wrangling!"><meta data-rh="true" property="og:description" content="Meet qsv, your new command line tool for data wrangling!"><link data-rh="true" rel="icon" href="/de-intern-guide/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://dathere.github.io/de-intern-guide/qsv/qsv-cli"><link data-rh="true" rel="alternate" href="https://dathere.github.io/de-intern-guide/qsv/qsv-cli" hreflang="en"><link data-rh="true" rel="alternate" href="https://dathere.github.io/de-intern-guide/qsv/qsv-cli" hreflang="x-default"><link rel="stylesheet" href="/de-intern-guide/assets/css/styles.f419e4b1.css">
<link rel="preload" href="/de-intern-guide/assets/js/runtime~main.18c385b9.js" as="script">
<link rel="preload" href="/de-intern-guide/assets/js/main.c2601a50.js" as="script">
</head>
<body class="navigation-with-keyboard">
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/de-intern-guide/"><div class="navbar__logo"><img src="/de-intern-guide/img/datHere-logo.png" alt="datHere Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/de-intern-guide/img/datHere-logo-dark.png" alt="datHere Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">Intern Onboarding Guide</b></a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/de-intern-guide/">📖 Guide</a><a class="navbar__item navbar__link" href="/de-intern-guide/about">💡 About</a></div><div class="navbar__items navbar__items--right"><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="Switch between dark and light mode (currently light mode)" aria-label="Switch between dark and light mode (currently light mode)" aria-live="polite"><svg viewBox="0 0 24 24" width="24" height="24" class="lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" class="darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg></button></div><div class="searchBox_ZlJk"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0 docsWrapper_BCFX"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docPage__5DB"><aside class="theme-doc-sidebar-container docSidebarContainer_b6E3"><div class="sidebarViewport_Xe31"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/de-intern-guide/">👋 Welcome to datHere!</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/de-intern-guide/category/-onboarding-setup">✈ Onboarding Setup</a><button aria-label="Toggle the collapsible sidebar category &#x27;✈ Onboarding Setup&#x27;" type="button" class="clean-btn menu__caret"></button></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--active" aria-expanded="true" href="/de-intern-guide/category/-qsv">⚡ qsv</a><button aria-label="Toggle the collapsible sidebar category &#x27;⚡ qsv&#x27;" type="button" class="clean-btn menu__caret"></button></div><ul style="display:block;overflow:visible;height:auto" class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/de-intern-guide/qsv/100">📖 100.dathere.com</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/de-intern-guide/qsv/qsv-cli">⚡ qsv</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/de-intern-guide/qsv/qsv-pro">💻 qsv pro</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/de-intern-guide/qsv/qsv-web">🖱 qsv.dathere.com</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist" aria-expanded="false" href="/de-intern-guide/category/-technical-writing">✍ Technical Writing</a><button aria-label="Toggle the collapsible sidebar category &#x27;✍ Technical Writing&#x27;" type="button" class="clean-btn menu__caret"></button></div></li></ul></nav></div></div></aside><main class="docMainContainer_gTbr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs" itemscope="" itemtype="https://schema.org/BreadcrumbList"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/de-intern-guide/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item"><a class="breadcrumbs__link" itemprop="item" href="/de-intern-guide/category/-qsv"><span itemprop="name">⚡ qsv</span></a><meta itemprop="position" content="1"></li><li itemscope="" itemprop="itemListElement" itemtype="https://schema.org/ListItem" class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link" itemprop="name">⚡ qsv</span><meta itemprop="position" content="2"></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><h1>⚡ qsv</h1><p>Meet <strong>qsv</strong>, your new command line tool for data wrangling!</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-whats-qsv">💭 What&#x27;s qsv?<a href="#-whats-qsv" class="hash-link" aria-label="Direct link to 💭 What&#x27;s qsv?" title="Direct link to 💭 What&#x27;s qsv?"></a></h2><p>qsv is a command line tool with 50+ commands that can perform data wrangling tasks in a relatively efficient manner.</p><p>For example, if I had a csv file that looked like this:</p><div class="language-csv codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockTitle_Ktv7">prices.csv</div><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-csv codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">id,fruit,cost</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">1,apple,5.00</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">2,banana,10.00</span><br></span><span class="token-line" style="color:#393A34"><span class="token plain">3,celery,2.00</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>Then I can use qsv to perform all sorts of commands based on the data. Maybe I want to simply count how many rows there are (not including the header row). I can run:</p><div class="language-bash codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-bash codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token plain">qsv count prices.csv</span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg viewBox="0 0 24 24" class="copyButtonIcon_y97N"><path fill="currentColor" d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg viewBox="0 0 24 24" class="copyButtonSuccessIcon_LjdS"><path fill="currentColor" d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><p>And the output would be <code>3</code>. But I can add flags for even more options like additionally getting the number of characters in the longest row by adding <code>--width</code> (e.g., <code>qsv count prices.csv --width</code>), and other commands also have subcommands!</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-cool-features">✨ Cool Features<a href="#-cool-features" class="hash-link" aria-label="Direct link to ✨ Cool Features" title="Direct link to ✨ Cool Features"></a></h2><ul><li><strong>50+ commands:</strong> There&#x27;s plenty of options for users for all sorts of backgrounds to use qsv in their workflow</li><li><strong>Blazingly fast:</strong> qsv is built primarily with the Rust programming language, offering fast speeds even for very large datasets</li><li><strong>Mix and match:</strong> Combine different qsv commands and integrate qsv with other tools to enhance data wrangling</li></ul><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-install-qsv">🛠 Install qsv<a href="#-install-qsv" class="hash-link" aria-label="Direct link to 🛠 Install qsv" title="Direct link to 🛠 Install qsv"></a></h2><ol><li><a href="/de-intern-guide/onboarding/qsv-setup">Install qsv</a>.</li><li>Once installed, run <code>qsv --list</code> to list the commands available to you, and you can further learn about them by running <code>qsv &lt;command&gt; --help</code> where <code>&lt;command&gt;</code> is the command you want to learn about (e.g., <code>qsv count --help</code>).</li><li>Try running qsv commands on your files!</li></ol><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-your-first-command-qsv-count">📊 Your first command: <code>qsv count</code><a href="#-your-first-command-qsv-count" class="hash-link" aria-label="Direct link to -your-first-command-qsv-count" title="Direct link to -your-first-command-qsv-count"></a></h2><p>Navigate to your desired <code>.csv</code> file on the terminal and try typing <code>qsv count &lt;filename&gt;</code> (where <code>&lt;filename&gt;</code> is the name of your file) and see what happens!</p><p>See if you can try following along in <a href="https://nbviewer.org/github/jqnatividad/qsv/blob/master/contrib/notebooks/intro-to-count.ipynb" target="_blank" rel="noopener noreferrer">the intro-to-count.ipynb notebook</a>.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="-ready-for-some-data-wrangling">🚀 Ready for some data wrangling?<a href="#-ready-for-some-data-wrangling" class="hash-link" aria-label="Direct link to 🚀 Ready for some data wrangling?" title="Direct link to 🚀 Ready for some data wrangling?"></a></h2><p>That&#x27;s just the beginning! Explore more commands, use qsv to perform various transformations, and have fun wrangling data with qsv!</p><p>Remember, qsv can help make data exciting and easy, even if you&#x27;re just starting on your data journey!</p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/dathere/de-intern-guide/tree/main/docs/qsv/qsv-cli.mdx" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/de-intern-guide/qsv/100"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">📖 100.dathere.com</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/de-intern-guide/qsv/qsv-pro"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">💻 qsv pro</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#-whats-qsv" class="table-of-contents__link toc-highlight">💭 What&#39;s qsv?</a></li><li><a href="#-cool-features" class="table-of-contents__link toc-highlight">✨ Cool Features</a></li><li><a href="#-install-qsv" class="table-of-contents__link toc-highlight">🛠 Install qsv</a></li><li><a href="#-your-first-command-qsv-count" class="table-of-contents__link toc-highlight">📊 Your first command: <code>qsv count</code></a></li><li><a href="#-ready-for-some-data-wrangling" class="table-of-contents__link toc-highlight">🚀 Ready for some data wrangling?</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">datHere Socials</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://dathere.com" target="_blank" rel="noopener noreferrer" class="footer__link-item">Website<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://github.com/dathere" target="_blank" rel="noopener noreferrer" class="footer__link-item">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://www.linkedin.com/company/dathere/" target="_blank" rel="noopener noreferrer" class="footer__link-item">LinkedIn<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://dathere.com/blog/" target="_blank" rel="noopener noreferrer" class="footer__link-item">Blog<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2025 datHere, Inc. Built with Docusaurus.</div></div></div></footer></div>
<script src="/de-intern-guide/assets/js/runtime~main.18c385b9.js"></script>
<script src="/de-intern-guide/assets/js/main.c2601a50.js"></script>
</body>
</html>