{"id":9888,"date":"2024-11-04T11:02:04","date_gmt":"2024-11-04T19:02:04","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/python\/?p=9888"},"modified":"2024-11-04T11:16:16","modified_gmt":"2024-11-04T19:16:16","slug":"announcing-github-copilot-in-data-wrangler","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/python\/announcing-github-copilot-in-data-wrangler\/","title":{"rendered":"Announcing GitHub Copilot in Data Wrangler"},"content":{"rendered":"<p><em>AI did not write this blog post, but it will make your exploratory data analysis with Data Wrangler better!<\/em><\/p>\n<p>Today, we\u2019re excited to introduce our first step of integrating the power of Copilot into Data Wrangler.<\/p>\n<p>With this first integration of Copilot with Data Wrangler, you\u2019ll be able to:<\/p>\n<ul>\n<li>Use natural language to clean and transform your data<\/li>\n<li>Get help with fixing errors in your data transformation code<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/nl2code-gif.gif\"><img decoding=\"async\" class=\"size-full wp-image-9890 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/nl2code-gif.gif\" alt=\"Using Copilot to generate code for a data transformation in Data Wrangler\" width=\"1512\" height=\"868\" \/><\/a><\/p>\n<p style=\"text-align: center;\">An example of using Copilot in Data Wrangler to filter for listings that allow dogs\/cats<\/p>\n<p>&nbsp;<\/p>\n<p class=\"p1\">A common limitation of using AI tools for exploratory data analysis tasks today is the lack of data context provided to the AI. Responses are typically more generalized and not tailored to the specific task or data at hand. In addition, there\u2019s always the manual and tedious task of verifying the correctness of the generated code.<\/p>\n<p class=\"p1\">What makes Copilot with Data Wrangler different is twofold. First, this integration allows you to choose to provide Copilot with your data context, enabling it to generate more relevant and specific code for the exact dataset you have open. Second, you get to preview the exact behavior of the code on your dataset with the Data Wrangler interface to visually validate Copilot\u2019s response, along with all the benefits that the Data Wrangler tool provides.<\/p>\n<h1>Data transformations<\/h1>\n<p class=\"p1\">With Copilot in Data Wrangler, you can ask it to perform ambiguous, open-ended transformations or a specific task you have in mind. Below we\u2019ve included three examples of the many possibilities you can achieve with Copilot in Data Wrangler:<\/p>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/format-date-nl2code.gif\"><img decoding=\"async\" class=\"size-full wp-image-9891 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/format-date-nl2code.gif\" alt=\"Formatting a datetime column in Data Wrangler with Copilot\" width=\"1512\" height=\"870\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Formatting a datetime column<\/p>\n<hr \/>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/ambigious-task-nl2code.gif\"><img decoding=\"async\" class=\"size-full wp-image-9892 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/ambigious-task-nl2code.gif\" alt=\"Using Copilot in Data Wrangler to remove any column with over 40% missing values\" width=\"1512\" height=\"870\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Removing any column(s) with over 40% missing values<\/p>\n<hr \/>\n<p><a href=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/Fix-with-copilot.png\"><img decoding=\"async\" class=\"wp-image-9893 aligncenter\" src=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/Fix-with-copilot.png\" alt=\"Using Copilot in Data Wrangler to fix errors in code\" width=\"1118\" height=\"342\" srcset=\"https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/Fix-with-copilot.png 726w, https:\/\/devblogs.microsoft.com\/python\/wp-content\/uploads\/sites\/12\/2024\/11\/Fix-with-copilot-300x92.png 300w\" sizes=\"(max-width: 1118px) 100vw, 1118px\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Fixing an error in a data transformation<\/p>\n<h1>Getting started today<\/h1>\n<p>To use Copilot with Data Wrangler, you will need the following 3 prerequisites.<\/p>\n<ol>\n<li>You must have the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-toolsai.datawrangler&amp;ssr=false#overview\">Data Wrangler<\/a> extension for VS Code installed.<\/li>\n<li>You must have the\u00a0<a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=GitHub.copilot\">GitHub Copilot <\/a>extension for VS Code installed.<\/li>\n<li>You must have an active subscription for GitHub Copilot in your personal account, or you need to be assigned a seat by your organization. Sign up for a\u00a0<a href=\"https:\/\/github.com\/login?return_to=%2fgithub-copilot%2fsignup\">GitHub Copilot free trial<\/a> in your personal account.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<p>Follow these steps to\u00a0<a href=\"https:\/\/code.visualstudio.com\/docs\/copilot\/setup\">Set up GitHub Copilot in VS Code<\/a>.<\/p>\n<p class=\"p1\">Once the prerequisites are met, you will see the Copilot interface within Data Wrangler by default (customizable in the Data Wrangler settings) when you are in <em>Editing Mode<\/em>. You can then either select the input box or use the default Copilot keyboard shortcut of <code class=\"language-default\">CMD\/CTRL + I<\/code>.<\/p>\n<h1>Responsible AI<\/h1>\n<p>AI is not perfect (neither are we!) and it will improve over time.\u00a0Microsoft and GitHub Copilot follow\u00a0<a href=\"https:\/\/www.microsoft.com\/ai\/responsible-ai\">Responsible AI<\/a>\u00a0principles and employ controls to ensure that your experience with the service is appropriate, pleasant, and useful. We understand there is hesitation and concern surrounding the rapid expansion of AI&#8217;s capabilities, and fully respect those who don&#8217;t want or can&#8217;t use Copilot.<\/p>\n<p>If you have any feedback around the Copilot experience in Data Wrangler, please file an issue in our Data Wrangler public GitHub repository <a href=\"https:\/\/github.com\/microsoft\/vscode-data-wrangler\/issues\">here<\/a>.<\/p>\n<h1>Next Steps<\/h1>\n<p class=\"p1\">We are just getting started. This is the first experience in Data Wrangler that we are enhancing with Copilot. Stay tuned for more AI-powered experiences in Data Wrangler to help with your data analysis needs soon!<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>AI did not write this blog post, but it will make your exploratory data analysis with Data Wrangler better! Today, we\u2019re excited to introduce our first step of integrating the power of Copilot into Data Wrangler. With this first integration of Copilot with Data Wrangler, you\u2019ll be able to: Use natural language to clean and [&hellip;]<\/p>\n","protected":false},"author":8347,"featured_media":9890,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1271,1272,1,6],"tags":[1276,1274,1263,1032,1264,1275,1273,19,267],"class_list":["post-9888","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-science","category-data-wrangler","category-python","category-visual-studio-code","tag-ai","tag-copilot","tag-data","tag-data-science","tag-data-wrangler","tag-exploratory-data-analysis","tag-github-copilot","tag-visual-studio-code","tag-vs-code"],"acf":[],"blog_post_summary":"<p>AI did not write this blog post, but it will make your exploratory data analysis with Data Wrangler better! Today, we\u2019re excited to introduce our first step of integrating the power of Copilot into Data Wrangler. With this first integration of Copilot with Data Wrangler, you\u2019ll be able to: Use natural language to clean and [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/posts\/9888","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/users\/8347"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/comments?post=9888"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/posts\/9888\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/media\/9890"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/media?parent=9888"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/categories?post=9888"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/python\/wp-json\/wp\/v2\/tags?post=9888"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}