﻿{"id":252,"date":"2026-02-03T16:50:11","date_gmt":"2026-02-03T08:50:11","guid":{"rendered":"http:\/\/blog.huihuia24.top\/?p=252"},"modified":"2026-02-03T16:51:52","modified_gmt":"2026-02-03T08:51:52","slug":"pandasnumpy%e5%8f%af%e8%a7%86%e5%8c%96","status":"publish","type":"post","link":"http:\/\/blog.huihuia24.top\/index.php\/2026\/02\/03\/pandasnumpy%e5%8f%af%e8%a7%86%e5%8c%96\/","title":{"rendered":"pandas+numpy+matplotlib"},"content":{"rendered":"<p>\u914d\u5957\u89c6\u9891\uff1a<a href=\"https:\/\/www.bilibili.com\/video\/BV1Di4y1C7mD?buvid=YF4DE1F1A6ABBCF44D6AB41809DAC0819457&amp;from_spmid=playlist.playlist-detail.0.0&amp;is_story_h5=false&amp;mid=HOCsG4SvguTuHygAOQbHjw%3D%3D&amp;plat_id=114&amp;share_from=ugc&amp;share_medium=iphone&amp;share_plat=ios&amp;share_session_id=37D2FF11-009C-4781-A73D-37CAB189921C&amp;share_source=weixin&amp;share_tag=s_i&amp;timestamp=1768996235&amp;unique_k=3Ne3aAa&amp;up_id=1642924856\">\u6570\u636e\u6e05\u6d17<\/a><\/p>\n<p>PDF\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"http:\/\/blog.huihuia24.top\/wp-content\/uploads\/2026\/02\/%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90.pdf\">\u6570\u636e\u5206\u6790PDF<\/a><\/p>\n<h2>\u4e00\u3001Python\u6570\u636e\u5206\u6790\u7b80\u4ecb<\/h2>\n<h3>1.\u5e38\u7528Python\u6570\u636e\u5206\u6790\u5f00\u6e90\u5e93<\/h3>\n<ul>\n<li><code>numpy<\/code>\n<ul>\n<li>\u4e00\u4e2a\u5f3a\u5927\u7684N\u7ef4\u6570\u7ec4\u5bf9\u8c61<code>ndarray<\/code><\/li>\n<li>\u5e7f\u64ad\u529f\u80fd\u51fd\u6570<\/li>\n<li>\u7ebf\u6027\u4ee3\u6570\u3002\u5085\u91cc\u53f6\u53d8\u6362\uff0c\u968f\u673a\u6570\u751f\u6210\u7b49<\/li>\n<\/ul>\n<\/li>\n<li><code>pandas<\/code>\n<ul>\n<li>\u5f3a\u5927\u7684\u5206\u6790\u7ed3\u6784\u5316\u6570\u636e\u7684\u5de5\u5177\u96c6<\/li>\n<li>\u7528\u4e8e\u6570\u636e\u6316\u6398\u548c\u6570\u636e\u5206\u6790\uff0c\u540c\u65f6\u4e5f\u63d0\u4f9b\u6570\u636e\u6e05\u6d17\u529f\u80fd<\/li>\n<li><code>pandas<\/code>\u5229\u5668\n<ul>\n<li><code>series<\/code>\uff1a\u4e00\u79cd\u7c7b\u4f3c\u4e8e\u4e00\u7ef4\u6570\u7ec4\u7684\u5bf9\u8c61<\/li>\n<li><code>dataframe<\/code>\uff1a\u662f<code>pandas<\/code>\u4e2d\u7684\u5e94\u8be5\u8868\u683c\u578b\u7684\u6570\u636e\u7ed3\u6784<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><code>matplotlib<\/code>\n<ul>\n<li>\u5f3a\u5927\u7684\u6570\u636e\u53ef\u89c6\u5316\u5f00\u6e90\u5e93<\/li>\n<li>python\u4e2d\u4f7f\u7528\u6700\u591a\u7684\u56fe\u5f62\u7ed8\u56fe\u5e93<\/li>\n<li>\u53ef\u4ee5\u521b\u5efa\u9759\u6001\uff0c\u52a8\u6001\u548c\u4ea4\u4e92\u5f0f\u7684\u56fe\u8868<\/li>\n<\/ul>\n<\/li>\n<li><code>seaborn<\/code>\n<ul>\n<li>\u5efa\u7acb\u5728<code>matplotlib<\/code>\u4e4b\u4e0a\uff0c\u5e76\u96c6\u6210\u4e86<code>pandas<\/code>\u7684\u6570\u636e\u7ed3\u6784<\/li>\n<li><code>seaborn<\/code>\u901a\u8fc7\u66f4\u7b80\u6d01\u7684API\u6765\u7ed8\u5236\u4fe1\u606f\u66f4\u4e30\u5bcc\uff0c\u66f4\u5177\u5438\u5f15\u529b\u7684\u56fe\u50cf<\/li>\n<li>\u9762\u5411\u6570\u636e\u96c6\u7684API\uff0c\u4e0e<code>pandas<\/code>\u914d\u5408\u4f7f\u7528\u8d77\u6765\u6bd4\u76f4\u63a5\u4f7f\u7528<code>matplotlib<\/code>\u66f4\u65b9\u4fbf<\/li>\n<\/ul>\n<\/li>\n<li><code>sklearn<\/code>\n<ul>\n<li><code>scikit-learn<\/code>\u662f\u57fa\u4e8epython\u8bed\u8a00\u7684\u673a\u5668\u5b66\u4e60\u5de5\u5177<\/li>\n<li>\u7b80\u5355\u9ad8\u6548\u7684\u6570\u636e\u6316\u6398\u548c\u6570\u636e\u5206\u6790\u5de5\u5177<\/li>\n<li>\u53ef\u4f9b\u5927\u5bb6\u5b50\u554a\u5404\u79cd\u73af\u5883\u4e2d\u91cd\u590d\u4f7f\u7528<\/li>\n<li>\u5efa\u7acb\u5728<code>numpy<\/code>\u3001<code>scipy<\/code>\u548c<code>matplotlib<\/code>\u4e0a<\/li>\n<\/ul>\n<\/li>\n<li><code>jupyter notebook<\/code>\/<code>jupyterlab<\/code>\n<ul>\n<li><code>jupyter notebook<\/code>\u662f\u4e00\u4e2a\u5f00\u6e90\u7684web\u5e94\u7528\u7a0b\u5e8f<\/li>\n<li>\u53ef\u4ee5\u521b\u5efa\u548c\u5171\u4eab\u4ee3\u7801\u3001\u516c\u5f0f\u3001\u53ef\u89c6\u5316\u56fe\u8868\u3001\u7b14\u8bb0\u6587\u6863<\/li>\n<li>\u662f\u6570\u636e\u5206\u6790\u5b66\u4e60\u548c\u5f00\u53d1\u7684\u9996\u9009\u5f00\u53d1\u73af\u5883<\/li>\n<li>\u7528\u9014\uff1a\n<ul>\n<li>\u6570\u636e\u6e05\u7406\u548c\u8f6c\u6362<\/li>\n<li>\u6570\u503c\u6a21\u62df<\/li>\n<li>\u7edf\u8ba1\u5206\u6790<\/li>\n<li>\u6570\u636e\u53ef\u89c6\u5316<\/li>\n<li>\u673a\u5668\u5b66\u4e60\u7b49<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>2.Python\u6570\u636e\u5206\u6790\u73af\u5883\u642d\u5efa<\/h3>\n<h4>Anaconda\u7b80\u4ecb<\/h4>\n<p>Anaconda\u662f\u6700\u6d41\u884c\u7684\u6570\u636e\u5206\u6790\u5e73\u53f0\uff0c\u5168\u7403\u4e24\u5343\u591a\u4e07\u4eba\u5728\u4f7f\u7528<\/p>\n<p>Anaconda\u9644\u5e26\u4e00\u5927\u6279\u5e38\u7528\u6570\u636e\u79d1\u5b66\u5305<\/p>\n<p>Anaconda\u5728conda(\u4e00\u4e2a\u5305\u7ba1\u7406\u5668\u548c\u73af\u5883\u7ba1\u7406\u5668)\u4e0a\u53d1\u5c55\u51fa\u6765\u7684<\/p>\n<p>\u53ef\u4ee5\u5e2e\u52a9\u4f60\u5728\u8ba1\u7b97\u673a\u4e0a\u5b89\u88c5\u548c\u7ba1\u7406\u65f6\u95f4\u5206\u6790\u76f8\u5173\u5305<\/p>\n<p>\u5305\u542b\u4e86\u865a\u62df\u73af\u5883\u7ba1\u7406\u5de5\u5177<\/p>\n<h3>3.<code>jupyter<\/code>\u4f7f\u7528<\/h3>\n<h4>\u6253\u5f00<code>jupyter<\/code><\/h4>\n<p>\u5728\u8981\u6253\u5f00\u7684\u6587\u4ef6\u76ee\u5f55\u4e0b\u8fdb\u5165\u547d\u4ee4\u884c\uff0c\u8f93\u5165\u4ee5\u4e0b\u6307\u4ee4<\/p>\n<pre><code class=\"language-shell\">jupyter notebook\n<\/code><\/pre>\n<h4>\u5e38\u7528\u5feb\u6377\u952e<\/h4>\n<p>**\u7f16\u8f91\u6a21\u5f0f\uff1a**\u6309<kbd>Enter<\/kbd>\u8fdb\u5165<\/p>\n<p><strong>\u591a\u5149\u6807\u64cd\u4f5c\uff1a<\/strong><kbd>Ctrl<\/kbd>\u952e\u526a\u8f91\u9f20\u6807<\/p>\n<p><strong>\u91cd\u505a\uff1a<\/strong><kbd>Ctrl<\/kbd>+<kbd>Y<\/kbd><\/p>\n<p>**\u4ee3\u7801\u8865\u5168\uff1a**\u53d8\u91cf\u3001\u65b9\u6cd5\u540e\u8ddf<kbd>Tab<\/kbd>\u952e<\/p>\n<p><strong>\u4e3a\u4e00\u884c\u4ee3\u7801\u6216\u591a\u884c\u4ee3\u7801\u6dfb\u52a0\/\u53d6\u6d88\u6ce8\u91ca\uff1a<\/strong><kbd>Ctrl<\/kbd>+<kbd>\/<\/kbd><\/p>\n<p><strong>\u6267\u884c\u672c\u5355\u5143\u4ee3\u7801\uff0c\u5e76\u8df3\u8f6c\u5230\u4e0b\u4e00\u5355\u5143\uff1a<\/strong><kbd>shift<\/kbd>+<kbd>Enter<\/kbd><\/p>\n<p><strong>\u6267\u884c\u672c\u5355\u5143\u4ee3\u7801\uff0c\u5e76\u7559\u5728\u672c\u5355\u5143\uff1a<\/strong><kbd>Ctrl<\/kbd>+<kbd>Enter<\/kbd><\/p>\n<p><strong>cell\u884c\u53f7\u524d\u7684<code>*<\/code>\uff0c\u8868\u793a\u4ee3\u7801\u6b63\u5728\u8fd0\u884c<\/strong><\/p>\n<h2>\u4e8c\u3001pandas\u6570\u636e\u7ed3\u6784<\/h2>\n<h3>1.<code>series<\/code>\u548c<code>dataframe<\/code><\/h3>\n<p><code>series<\/code>\u548c<code>dataframe<\/code>\u662f<code>pandas<\/code>\u6700\u57fa\u672c\u7684\u4e24\u79cd\u6570\u636e\u7ed3\u6784<\/p>\n<p><code>dataframe<\/code>\u7528\u6765\u5904\u7406\u7ed3\u6784\u5316\u6570\u636e(sql\u6570\u636e\u8868\uff0cexcel\u8868\u683c)<\/p>\n<p><code>series<\/code>\u7528\u6765\u5904\u7406\u5355\u5217\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u628a<code>dataframe<\/code>\u770b\u4f5c\u662f<code>series<\/code>\u5bf9\u8c61\u7ec4\u6210\u7684\u5b57\u5178\u6216\u96c6\u5408<\/p>\n<h3>2.\u521b\u5efaSeries<\/h3>\n<pre><code class=\"language-python\">import pandas as pd\n\n# \u521b\u5efa\u4e00\u4e2aseries\u5bf9\u8c61\na = pd.Series([&#039;banana&#039;,42])\n\nprint(type(a))\nprint(a)\n\nb = pd.Series([&#039;\u5f20\u4e09&#039;,19],index=[&#039;name&#039;,&#039;age&#039;])\nprint(b)\n<\/code><\/pre>\n<h3>3.\u521b\u5efa<code>dataframe<\/code><\/h3>\n<p>\u53ef\u4ee5\u4f7f\u7528\u5b57\u5178\u6765\u521b\u5efa<code>dataframe<\/code><\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nstudents = {\n    &#039;name&#039;:[&#039;\u5f20\u4e09&#039;,&#039;\u674e\u56db&#039;],\n    &#039;age&#039;:[22,19],\n}\n# \u521b\u5efa\u4e00\u4e2adataframe\u5bf9\u8c61\na = pd.DataFrame(data=students)\nprint(a)\n\nb = pd.DataFrame(data={&#039;age&#039;:[22,19]},index=[&#039;\u5f20\u4e09&#039;,&#039;\u674e\u56db&#039;])\nprint(b)\n<\/code><\/pre>\n<blockquote>\n<p>\u521b\u5efa\u65f6\u6ca1\u6709\u6307\u5b9a\u884c\u7d22\u5f15\uff0c\u4f1a\u81ea\u52a8\u521b\u5efa0,1\u4f5c\u4e3a\u884c\u7d22\u5f15\uff0c\u5b57\u5178\u4e2d\u7684key\uff0c\u81ea\u52a8\u4f5c\u4e3a\u5217\u540d<\/p>\n<\/blockquote>\n<h2>\u4e09\u3001Series\u5e38\u7528\u64cd\u4f5c<\/h2>\n<h3>1.<code>Series<\/code>\u5e38\u7528\u5c5e\u6027<\/h3>\n<p>\u4f7f\u7528<code>dataframe<\/code>\u7684<code>loc<\/code>\u5c5e\u6027\u83b7\u53d6\u6570\u636e\u96c6\u91cc\u7684\u4e00\u884c\uff0c\u5c31\u4f1a\u5f97\u5230\u4e00\u4e2a<code>series<\/code>\u5bf9\u8c61<\/p>\n<h4>\u52a0\u8f7d\u6570\u636e<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nprint(a)\n\nb = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;, index_col=&#039;order_id&#039;)\nprint(b)\n<\/code><\/pre>\n<p>\u6570\u636e\u52a0\u8f7d\u540e\u4f1a\u751f\u6210\u4e00\u4e2a<code>dataframe<\/code>\u5bf9\u8c61<\/p>\n<h4>\u8bfb\u53d6\u6570\u636e<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nprint(a)\nprint(a.head()) # \u663e\u793a\u6700\u524d\u76845\u884c\u6570\u636e\nprint(a.tail()) # \u663e\u793a\u6700\u540e\u76845\u884c\u6570\u636e\nprint(a.head(10))   # \u663e\u793a\u6700\u524d\u768410\u884c\u6570\u636e\nprint(a.tail(10))   # \u663e\u793a\u6700\u540e\u768410\u884c\u6570\u636e\n<\/code><\/pre>\n<h4>\u4f7f\u7528\u7d22\u5f15\u6807\u7b7e\u9009\u62e9\u4e00\u6761\u8bb0\u5f55<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a.loc[1] # \u8bfb\u53d6\u6307\u5b9a\u7684\u4e00\u884c\nprint(data)\nprint(type(data))\n<\/code><\/pre>\n<p>\u4f7f\u7528<code>loc<\/code>\u53d6\u51fa\u6570\u636e\u540e\u662f\u4e00\u4e2a<code>series<\/code>\u5bf9\u8c61<\/p>\n<h4>\u53ef\u4ee5\u901a\u8fc7<code>index<\/code>\u548c<code>values<\/code>\u5c5e\u6027\u83b7\u53d6\u884c\u7d22\u5f15\u548c\u503c<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a.loc[1] # \u8bfb\u53d6\u6307\u5b9a\u7684\u4e00\u884c\n\nprint(data.index)\nprint(data.columns)\n<\/code><\/pre>\n<p><code>series<\/code>\u5bf9\u8c61\u6709<code>index<\/code>\u5c5e\u6027\u548c<code>values<\/code>\u5c5e\u6027<\/p>\n<h4><code>series<\/code>\u7684<code>keys<\/code>\u65b9\u6cd5<\/h4>\n<p>\u4f5c\u7528\u548c<code>index<\/code>\u5c5e\u6027\u4e00\u6837<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a.loc[1] # \u8bfb\u53d6\u6307\u5b9a\u7684\u4e00\u884c\n\nprint(data.keys())\n<\/code><\/pre>\n<h4><code>series<\/code>\u7684\u4e00\u4e9b\u5c5e\u6027<\/h4>\n<table>\n<thead>\n<tr>\n<th>\u5c5e\u6027<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>loc<\/code><\/td>\n<td>\u4f7f\u7528\u7d22\u5f15\u503c\u53d6\u5b50\u96c6<\/td>\n<\/tr>\n<tr>\n<td><code>iloc<\/code><\/td>\n<td>\u4f7f\u7528\u7d22\u5f15\u4f4d\u7f6e\u53d6\u5b50\u96c6<\/td>\n<\/tr>\n<tr>\n<td><code>dtype<\/code>\u6216<code>dtypes<\/code><\/td>\n<td><code>series<\/code>\u5185\u5bb9\u7684\u7c7b\u578b<\/td>\n<\/tr>\n<tr>\n<td><code>T<\/code><\/td>\n<td><code>series<\/code>\u7684\u8f6c\u7f6e\u77e9\u9635<\/td>\n<\/tr>\n<tr>\n<td><code>shape<\/code><\/td>\n<td>\u6570\u636e\u7684\u7ef4\u6570<\/td>\n<\/tr>\n<tr>\n<td><code>size<\/code><\/td>\n<td><code>series<\/code>\u4e2d\u5143\u7d20\u7684\u6570\u91cf<\/td>\n<\/tr>\n<tr>\n<td><code>values<\/code><\/td>\n<td><code>series<\/code>\u7684\u503c<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>2.<code>series<\/code>\u5e38\u7528\u65b9\u6cd5<\/h3>\n<table>\n<thead>\n<tr>\n<th>\u65b9\u6cd5<\/th>\n<th>\u4f5c\u7528<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>max()<\/td>\n<td>\u6700\u5927\u503c<\/td>\n<\/tr>\n<tr>\n<td>min()<\/td>\n<td>\u6700\u5c0f\u503c<\/td>\n<\/tr>\n<tr>\n<td>mean()<\/td>\n<td>\u5e73\u5747\u503c<\/td>\n<\/tr>\n<tr>\n<td>std()<\/td>\n<td>\u6807\u51c6\u5dee\uff0c\u53cd\u5e94\u7684\u662f\u4e00\u7ec4\u6570\u636e\u4e2d\u548c\u5e73\u5747\u503c\u7684\u5dee\u5f02\u7a0b\u5ea6<\/td>\n<\/tr>\n<tr>\n<td>value_counts()<\/td>\n<td>\u53ef\u4ee5\u8fd4\u56de\u4e0d\u540c\u503c\u7684\u6761\u76ee\u6570\u91cf<br \/>\u4f1a\u5bf9\u8fd9\u4e00\u5217\u4e2d\u7684\u503c\u8fdb\u884c\u5206\u7ec4<br \/>\u805a\u5408\uff0c\u7edf\u8ba1\u6bcf\u4e2a\u5206\u7ec4\u4e2d\u7684\u4e2a\u6570<br \/>\u6392\u5e8f\uff0c\u9ed8\u8ba4\u6839\u636e\u4e0a\u4e00\u6b65\u7684\u7edf\u8ba1\u7ed3\u679c\u8fdb\u884c\u964d\u5e8f\u6392\u5e8f<\/td>\n<\/tr>\n<tr>\n<td>count()<\/td>\n<td>\u8fd4\u56de\u6709\u591a\u5c11\u975e\u7a7a\u503c<\/td>\n<\/tr>\n<tr>\n<td>describe()<\/td>\n<td>\u6253\u5370\u63cf\u8ff0\u4fe1\u606f<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>\u9488\u5bf9\u6570\u503c\u578b\u7684<code>series<\/code>\uff0c\u53ef\u4ee5\u8fdb\u884c\u5e38\u89c1\u7684\u8ba1\u7b97<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\n\n# \u53d6\u51faquantity\u8fd9\u5217\ndata = a.quantity\n# \u6c42\u8fd9\u4e00\u5217\u7684\u5e73\u5747\u503c\nprint(data.mean())\n# \u6700\u5927\u503c\nprint(data.max())\n# \u6700\u5c0f\u503c\nprint(data.min())\n# \u8ba1\u7b97\u6807\u51c6\u5dee\uff0c\u53cd\u5e94\u7684\u662f\u4e00\u7ec4\u6570\u636e\u4e2d\u548c\u5e73\u5747\u503c\u7684\u5dee\u5f02\u7a0b\u5ea6\nprint(data.std())\n<\/code><\/pre>\n<h4>\u901a\u8fc7<code>value_counts()<\/code>\u65b9\u6cd5\uff0c\u53ef\u4ee5\u8fd4\u56de\u4e0d\u540c\u503c\u7684\u6761\u76ee\u6570\u91cf<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a[&#039;item_price&#039;]\n# \u4f1a\u5bf9\u8fd9\u4e00\u5217\u4e2d\u7684\u503c\u8fdb\u884c\u5206\u7ec4\n# \u805a\u5408\uff0c\u7edf\u8ba1\u6bcf\u4e2a\u5206\u7ec4\u4e2d\u7684\u4e2a\u6570\n# \u6392\u5e8f\uff0c\u9ed8\u8ba4\u6839\u636e\u4e0a\u4e00\u6b65\u7684\u7edf\u8ba1\u7ed3\u679c\u8fdb\u884c\u964d\u5e8f\u6392\u5e8f\nprint(data.value_counts())\n# \u8bbe\u7f6e\u5347\u5e8f\u6392\u5e8f\nprint(data.value_counts(ascending=True))\n<\/code><\/pre>\n<h4>count\u65b9\u6cd5<\/h4>\n<p>\u901a\u8fc7<code>count()<\/code>\u65b9\u6cd5\u53ef\u4ee5\u8fd4\u56de\u6709\u591a\u5c11\u975e\u7a7a\u503c<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a[&#039;item_price&#039;]\n# \u8fd4\u56de\u6709\u591a\u5c11\u975e\u7a7a\u503c\nprint(data.count())\n# \u8fd4\u56de\u4e2a\u6570\uff0c\u4e0d\u7ba1\u662f\u5426\u4e3a\u7a7a\nprint(data.size)\n<\/code><\/pre>\n<h4><code>describe()<\/code>\u65b9\u6cd5<\/h4>\n<p>\u6253\u5370\u63cf\u8ff0\u4fe1\u606f<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\ndata = a[&#039;item_price&#039;]\n\n# \u6253\u5370\u63cf\u8ff0\u4fe1\u606f\nprint(data.describe())\nprint(&#039;*&#039;*80)\nquantity = a[&#039;quantity&#039;]\nprint(quantity.describe())\n<\/code><\/pre>\n<h4>\u5176\u4ed6\u7684\u5e38\u7528\u65b9\u6cd5<\/h4>\n<table>\n<thead>\n<tr>\n<th>\u65b9\u6cd5<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>append()<\/td>\n<td>\u8fde\u63a5\u4e24\u4e2a\u6216\u591a\u4e2aseries<\/td>\n<\/tr>\n<tr>\n<td>corr()<\/td>\n<td>\u8ba1\u7b97\u4e0e\u53e6\u4e00\u4e2aseries\u7684\u76f8\u5173\u7cfb\u6570<\/td>\n<\/tr>\n<tr>\n<td>cov()<\/td>\n<td>\u8ba1\u7b97\u4e0e\u53e6\u4e00\u4e2aseries\u7684\u534f\u65b9\u5dee<\/td>\n<\/tr>\n<tr>\n<td>describe()<\/td>\n<td>\u8ba1\u7b97\u5e38\u89c1\u7edf\u8ba1\u91cf<\/td>\n<\/tr>\n<tr>\n<td>drop_duplicates()<\/td>\n<td>\u8fd4\u56de\u53bb\u91cd\u540e\u7684\u4e24\u4e2aseries<\/td>\n<\/tr>\n<tr>\n<td>equals()<\/td>\n<td>\u5224\u65ad\u4e24\u4e2aseries\u662f\u5426\u76f8\u540c<\/td>\n<\/tr>\n<tr>\n<td>get_values()<\/td>\n<td>\u83b7\u53d6series\u7684\u503c\uff0c\u4f5c\u7528\u4e0evalues\u5c5e\u6027\u76f8\u540c<\/td>\n<\/tr>\n<tr>\n<td>hist()<\/td>\n<td>\u7ed8\u5236\u76f4\u65b9\u56fe<\/td>\n<\/tr>\n<tr>\n<td>isin()<\/td>\n<td>series\u4e2d\u662f\u5426\u5305\u542b\u67d0\u4e9b\u503c<\/td>\n<\/tr>\n<tr>\n<td>min()<\/td>\n<td>\u6700\u5c0f\u503c<\/td>\n<\/tr>\n<tr>\n<td>max()<\/td>\n<td>\u6700\u5927\u503c<\/td>\n<\/tr>\n<tr>\n<td>mean()<\/td>\n<td>\u7b97\u6570\u5e73\u5747\u503c<\/td>\n<\/tr>\n<tr>\n<td>median()<\/td>\n<td>\u8fd4\u56de\u4e2d\u4f4d\u6570<\/td>\n<\/tr>\n<tr>\n<td>mode()<\/td>\n<td>\u8fd4\u56de\u4f17\u6570<\/td>\n<\/tr>\n<tr>\n<td>quantile()<\/td>\n<td>\u8fd4\u56de\u6307\u5b9a\u4f4d\u7f6e\u7684\u5206\u4f4d\u6570<\/td>\n<\/tr>\n<tr>\n<td>replace()<\/td>\n<td>\u7528\u6307\u5b9a\u503c\u4ee3\u66ffseries\u4e2d\u7684\u503c<\/td>\n<\/tr>\n<tr>\n<td>sample()<\/td>\n<td>\u8fd4\u56deseries\u7684\u968f\u673a\u91c7\u6837\u503c<\/td>\n<\/tr>\n<tr>\n<td>sort_values()<\/td>\n<td>\u5bf9\u503c\u8fdb\u884c\u6392\u5e8f<\/td>\n<\/tr>\n<tr>\n<td>to_frame()<\/td>\n<td>\u628aseries\u8f6c\u5316\u4e3adataframe<\/td>\n<\/tr>\n<tr>\n<td>unique()<\/td>\n<td>\u53bb\u91cd\u8fd4\u56de\u6570\u7ec4<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>3.series\u7684\u5e03\u5c14\u7d22\u5f15<\/h3>\n<p>\u4eceseries\u4e2d\u83b7\u53d6\u6ee1\u8db3\u67d0\u4e9b\u6761\u4ef6\u7684\u6570\u636e\uff0c\u53ef\u4ee5\u4f7f\u7528\u5e03\u5c14\u7d22\u5f15<\/p>\n<h4>\u83b7\u53d6\u5927\u4e8e\u5e73\u5747\u503c\u7684\u7ed3\u679c<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nquantity = a[&#039;quantity&#039;]\n# \u83b7\u53d6\u5927\u4e8e\u5e73\u5747\u503c\u7684\u7ed3\u679c\nprint(quantity[quantity&gt;quantity.mean()])\n<\/code><\/pre>\n<h3>4.series\u7684\u8fd0\u7b97<\/h3>\n<p>series\u548c\u6570\u503c\u53d8\u91cf\u8ba1\u7b97\u65f6\uff0c\u53d8\u91cf\u4f1a\u4e0eseries\u4e2d\u7684\u6bcf\u4e00\u4e2a\u5143\u7d20\u9010\u4e00\u8fdb\u884c\u8ba1\u7b97<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nquantity = a[&#039;quantity&#039;]\nprint(quantity+100)\nprint(quantity*2)\n<\/code><\/pre>\n<p>\u4e24\u4e2aseries\u4e4b\u95f4\u8ba1\u7b97\uff0c\u5982\u679cseries\u5143\u7d20\u4e2a\u6570\u76f8\u540c\uff0c\u5219\u4e24\u4e2aseries\u5bf9\u5e94\u5143\u7d20\u8fdb\u884c\u8ba1\u7b97<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nquantity = a[&#039;quantity&#039;]\nprint(quantity+quantity)\n<\/code><\/pre>\n<p>\u5143\u7d20\u7684\u4e2a\u6570\u4e0d\u540c\u7684series\u4e4b\u95f4\u8fdb\u884c\u8ba1\u7b97\uff0c\u4f1a\u6839\u636e\u7d22\u5f15\u8fdb\u884c\uff0c\u7d22\u5f15\u4e0d\u540c\u7684\u5143\u7d20\u6700\u7ec8\u8ba1\u7b97\u7684\u7ed3\u679c\u4f1a\u586b\u5145\u6210\u7f3a\u5931\u503c\uff0c\u7528<code>NaN<\/code>\u8868\u793a<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nquantity = a[&#039;quantity&#039;]\nprint(quantity+pd.Series([1,100]))\n<\/code><\/pre>\n<h4>Series\u8fd0\u7b97\u89c4\u5219<\/h4>\n<ul>\n<li>Series\u548c\u5e38\u6570\u505a\u8fd0\u7b97\uff0cSeries\u4e2d\u7684\u6bcf\u4e2a\u503c\u548c\u8fd9\u4e2a\u5e38\u6570\u8fdb\u884c\u8fd0\u7b97<\/li>\n<li>Series\u548cSeries\u8fdb\u884c\u8fd0\u7b97\n<ul>\n<li>\u4e24\u4e2aSeries\u7d22\u5f15\u76f8\u540c\u7684\u503c\u8fdb\u884c\u8fd0\u7b97<\/li>\n<li>\u5982\u679c\u4e00\u4e2aSeries\u4e2d\u5bf9\u5e94\u4f4d\u7f6e\u6ca1\u6709\u503c\uff0c\u4e5f\u5c31\u662f\u7a7a\u503c\uff0c\u751f\u6210\u7ed3\u679c\u4e2d\uff0c\u5bf9\u5e94\u4f4d\u7f6e\u4e5f\u662f\u7a7a\u503c<\/li>\n<li>\u5bf9\u5176\u4e2d\u4e00\u4e2aSeries\u8fdb\u884c\u9006\u5e8f\u64cd\u4f5c\uff0c\u518d\u8fdb\u884c\u8fd0\u7b97\uff0c\u7ed3\u679c\u4ecd\u7136\u7b26\u5408\u4ee5\u4e0a\u89c4\u5219<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>\u56db\u3001Dataframe\u5e38\u7528\u64cd\u4f5c<\/h2>\n<h3>1.Dataframe\u7684\u5e38\u7528\u5c5e\u6027\u548c\u65b9\u6cd5<\/h3>\n<p>Dataframe\u662fPandas\u4e2d\u6700\u5e38\u89c1\u7684\u5bf9\u8c61\uff0cSeries\u6570\u636e\u7ed3\u6784\u7684\u8bb8\u591a\u5c5e\u6027\u548c\u65b9\u6cd5\u5728Dataframe\u4e2d\u4e5f\u4e00\u6837\u9002\u7528<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\n# \u6253\u5370\u884c\u6570\u548c\u5217\u6570\nprint(a.shape)\n# \u6253\u5370\u6570\u636e\u7684\u4e2a\u6570\nprint(a.size)\n# \u8be5\u6570\u636e\u96c6\u7684\u7ef4\u5ea6\nprint(a.ndim)\n# \u8be5\u6570\u636e\u96c6\u7684\u957f\u5ea6\nprint(len(a))\n# \u6bcf\u5217\u7684\u975e\u7a7a\u503c\u4e2a\u6570\nprint(a.count())\n# \u5404\u5217\u7684\u6700\u5c0f\u503c\nprint(a.min())\n# \u5404\u5217\u7684\u6700\u5927\u503c\nprint(a.max())\n# \u5404\u5217\u7684\u5e73\u5747\u503c\n# print(a.mean())\n# \u5bf9\u6570\u503c\u5217\u8fdb\u884c\u7edf\u8ba1\nprint(a.describe())\n# print(a.describe(include=object))\nprint(&#039;*&#039;*80)\nprint(a.describe(include = &#039;all&#039;))\n<\/code><\/pre>\n<h3>2.Dataframe\u7684\u5e03\u5c14\u7d22\u5f15<\/h3>\n<p>\u540cSeries\u4e00\u6837\uff0cDataframe\u4e5f\u53ef\u4ee5\u4f7f\u7528\u5e03\u5c14\u7d22\u5f15\u83b7\u53d6\u6570\u636e\u5b50\u96c6<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\n# \u8ba1\u7b97\u6bcf\u884cquantity\u5927\u4e8equantity\u5e73\u5747\u503c\u7684\u884c\nprint(a[a[&#039;quantity&#039;]&gt;a[&#039;quantity&#039;].mean()])\nprint(a.head()[[True,False,False,True,False]])\n<\/code><\/pre>\n<h3>3.Dataframe\u7684\u8fd0\u7b97<\/h3>\n<p>\u5f53Dataframe\u548c\u6570\u503c\u8fdb\u884c\u8fd0\u7b97\u65f6\uff0cDataframe\u4e2d\u7684\u6bcf\u4e00\u4e2a\u5143\u7d20\u4f1a\u5206\u522b\u548c\u6570\u503c\u8fdb\u884c\u8fd0\u7b97<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nprint(a*2)\n<\/code><\/pre>\n<p>\u4e24\u4e2aDataframe\u4e4b\u95f4\u8fdb\u884c\u8ba1\u7b97\uff0c\u4f1a\u6839\u636e\u7d22\u5f15\u8fdb\u884c\u5bf9\u5e94\u8ba1\u7b97<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;\u8ba2\u5355\u6570\u636e\u8868.csv&#039;)\nprint(a+a)\n# a[:4]\u53d6\u51fa\u524d\u56db\u884c\nb = a[:4]\nprint(b)\n# \u53d6\u51fa\u524d\u56db\u884c\u4e09\u5217\u6570\u636e\nc = b[[&#039;order_id&#039;,&#039;quantity&#039;,&#039;item_name&#039;]]\nprint(c)\n\nprint(&#039;*&#039;*80)\nprint(a.value_counts())\n# \u5bf9\u7ed3\u679c\u53d6\u53cd\nprint(&#039;*&#039;*80)\nprint(~a.value_counts())\n\n# \u53d6\u503c\u7684\u533a\u522b\n# series\ns = a[&#039;item_name&#039;]\nprint(type(s))\n# dataframe\nd = a[[&#039;item_name&#039;]]\nprint(type(d))\n<\/code><\/pre>\n<blockquote>\n<p>dataframe\u548c\u5e38\u6570\u8fd0\u7b97\uff0cdetaframe\u4e2d\u7684\u6bcf\u4e2a\u5217(\u5c31\u662fseries\u5bf9\u8c61)\u548c\u5e38\u6570\u8fd0\u7b97\uff0c\u6bcf\u4e2a\u5143\u7d20\u548c\u8fd9\u4e2a\u5e38\u6570\u8fd0\u7b97<\/p>\n<p>dataframe\u548cdataframe\u8fd0\u7b97\uff0c\u9996\u5148\u627e\u884c\u7d22\u5f15\u76f8\u540c\u7684\u884c\uff0c\u518d\u627e\u5217\u540d\u76f8\u540c\u7684\u5143\u7d20\uff0c\u518d\u628a\u8fd9\u4e24\u4e2a\u503c\u8fdb\u884c\u8fd0\u7b97<\/p>\n<\/blockquote>\n<p><font color='red'><strong>\u6ce8\uff1a<\/strong><\/font>\u4e24\u4e2a\u4e2d\u62ec\u53f7\u5f97\u5230\u7684\u662f<code>dataframe<\/code>\u7c7b\u578b\u7684\u6570\u636e\uff0c\u4e00\u4e2a\u4e2d\u62ec\u53f7\u5f97\u5230\u7684\u662f<code>series<\/code>\u7c7b\u578b\u7684\u6570\u636e\uff0c\u4e24\u4e2a\u4e2d\u62ec\u53f7\u53ef\u4ee5\u4f20\u591a\u4e2a\u5217\u7684\u5217\u540d(\u524d\u63d0\u5217\u540d\u5b58\u5728)\uff0c\u4e00\u4e2a\u4e2d\u62ec\u53f7\u53ea\u80fd\u4f20\u4e00\u4e2a\u5217\u540d<\/p>\n<h3>4.\u4fee\u6539Series\u548cDataframe<\/h3>\n<h4>\u7ed9\u884c\u7d22\u5f15\u547d\u540d<\/h4>\n<h5>\u65b9\u6cd5\u4e00<code>set_index()<\/code><\/h5>\n<p>\u52a0\u8f7d\u6570\u636e\u540e\u901a\u8fc7set_index()\u4fee\u6539\u7d22\u5f15<\/p>\n<p>\u52a0\u8f7d\u6570\u636e\u6587\u4ef6\u65f6\uff0c\u5982\u679c\u4e0d\u6307\u5b9a\u884c\u7d22\u5f15\uff0cpandas\u4f1a\u81ea\u52a8\u52a0\u4e0a\u4ece0\u5f00\u59cb\u7684\u7d22\u5f15\uff0c\u53ef\u4ee5\u901a\u8fc7<code>set_index()<\/code>\u65b9\u6cd5\u91cd\u65b0\u8bbe\u7f6e\u884c\u7d22\u5f15\u7684\u540d\u5b57<\/p>\n<p><code>set_index()<\/code>\u6709\u4e00\u4e2a<code>inplace<\/code>\u7684\u53c2\u6570\uff0c\u8fd9\u4e2a\u53c2\u6570\u9ed8\u8ba4\u4e3aFalse\uff0c\u4e0d\u4f1a\u5728\u539f\u59cb\u7684Dataframe\u4e0a\u8fdb\u884c\u4fee\u6539\uff0c\u4f1a\u5427\u4fee\u6539\u540e\u7684Dataframe\u8fd4\u56de\u51fa\u6765<br \/>\u5982\u679c\u8bbe\u7f6e\u4e3aTrue\uff0c\u76f4\u63a5\u5728\u539f\u59cb\u7684Dataframe\u4e0a\u4fee\u6539\uff0c\u6ca1\u6709\u8fd4\u56de\u503c<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\n# \u65e0\u884c\u7d22\u5f15\na = pd.read_csv(&#039;movie.csv&#039;)\nprint(a)\n# \u4f7f\u7528movie_title\u4f5c\u4e3a\u884c\u7d22\u5f15\nmovie = a.set_index(&#039;movie_title&#039;)\nprint(movie)\n<\/code><\/pre>\n<p><strong>\u7d22\u5f15\u53ef\u4ee5\u6709\u91cd\u590d\uff0c\u4e5f\u53ef\u4ee5\u6709\u7a7a\u503c<\/strong><\/p>\n<h5>\u65b9\u6cd5\u4e8c<code>index_col<\/code><\/h5>\n<p>\u52a0\u8f7d\u6570\u636e\u65f6<\/p>\n<p>\u52a0\u8f7d\u6570\u636e\u7684\u65f6\u5019\u53ef\u4ee5\u901a\u8fc7<code>index_col<\/code>\u53c2\u6570\uff0c\u6307\u5b9a\u4f7f\u7528\u67d0\u4e00\u5217\u6570\u636e\u4f5c\u4e3a\u884c\u7d22\u5f15<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nprint(a)\nprint(&#039;*&#039;*80)\na = pd.read_csv(&#039;movie.csv&#039;,index_col=&#039;movie_title&#039;)\nprint(a)\n<\/code><\/pre>\n<h5><code>reset_index()<\/code>\u91cd\u7f6e\u7d22\u5f15<\/h5>\n<p>\u8fdb\u884c\u8fc7\u6ee4\u540e\uff0c\u6216\u8005\u5408\u5e76\u6570\u636e\u8868\u4e4b\u540e\uff0c\u53ef\u80fd\u9700\u8981\u8fdb\u884c\u91cd\u7f6e\u7d22\u5f15<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nprint(a)\nprint(&#039;*&#039;*80)\na2 = a.set_index(&#039;movie_title&#039;)\n# \u91cd\u7f6e\u7d22\u5f15\nc = a2.reset_index()\nprint(c)\n<\/code><\/pre>\n<p>\u6709\u4e00\u4e2a\u53c2\u6570drop\uff0c\u9ed8\u8ba4\u662fFalse\uff0c\u91cd\u7f6e\u4e4b\u524d\u7684\u7d22\u5f15\u4ecd\u7136\u4f1a\u4fdd\u7559\u4e0b\u6765<br \/>inplace\u9ed8\u8ba4\u662fFalse\uff0c\u8fd4\u56de\u4e00\u4e2a\u4fee\u6539\u540e\u7684Dataframe\uff0c\u9700\u8981\u4e00\u4e2a\u53d8\u91cf\u63a5\u6536\u7ed3\u679c<\/p>\n<h4>Dataframe\u4fee\u6539\u884c\u540d\u548c\u5217\u540d<\/h4>\n<h5>\u65b9\u6cd5\u4e00\uff1a<code>rename()<\/code><\/h5>\n<p>Dataframe\u521b\u5efa\u4e4b\u540e\u53ef\u4ee5\u901a\u8fc7\uff0c<code>rename()<\/code>\u65b9\u6cd5\u5bf9\u539f\u6709\u7684\u7d22\u5f15\u540d\u548c\u5217\u540d\u8fdb\u884c\u4fee\u6539<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col = &#039;movie_title&#039;)\n# \u53d6\u51fa\u884c\u7d22\u5f15\u7684\u524d\u4e94\u4e2a\nb = a.index[:5]\nprint(b)\n# \u53d6\u51fa\u5217\u540d\u7684\u524d\u4e09\u4e2a\nc = a.columns[:3]\nprint(c)\n\n# \u4fee\u6539\u884c\u7d22\u5f15\nb_rename = {\n    &#039;The Shawshank Redemption&#039;:&#039;\u8096\u751f\u514b\u7684\u6551\u8d4e&#039;,\n    &#039;The Godfather&#039;:&#039;\u6559\u7236&#039;\n}\n# \u4fee\u6539\u5217\u540d\nc.rename = {\n    &#039;movie_year&#039;:&#039;release_date&#039;,\n}\nd = a.rename(index=b_rename, columns=c.rename).head()\nprint(d)\n<\/code><\/pre>\n<p><strong><code>rename()<\/code>\u65b9\u6cd5\u7684\u53c2\u6570<\/strong><\/p>\n<p>\u9700\u8981\u4fee\u6539\u67d0\u4e9b\u7279\u5b9a\u7684\u884c\u7d22\u5f15\u6216\u8005\u5217\u540d\u65f6\u4f7f\u7528<\/p>\n<ul>\n<li>\n<p>index\uff1a\u4fee\u6539\u884c\u7d22\u5f15<\/p>\n<\/li>\n<li>\n<p>columns\uff1a\u4fee\u6539\u5217\u540d<\/p>\n<\/li>\n<li>\n<p>inpalce\uff1a\u9ed8\u8ba4False\uff0c\u8fd4\u56de\u4fee\u6539\u540e\u7684dataframe\uff0c\u8bbe\u7f6e\u4e3aTrue\u662f\u5728\u539f\u59cb\u7684dataframe\u4e0a\u4fee\u6539<\/p>\n<\/li>\n<li>\n<p>\u8bed\u6cd5<\/p>\n<pre><code class=\"language-python\">line = {\n    &#039;\u539f\u59cb\u503c&#039;:&#039;\u4fee\u6539\u503c&#039;\uff0c\n    ...\n}\nrow = {\n    &#039;\u539f\u59cb\u503c&#039;:&#039;\u4fee\u6539\u503c&#039;\uff0c\n    ...\n}\na.rename(index=line,columns=row)\n<\/code><\/pre>\n<\/li>\n<\/ul>\n<h5>\u65b9\u6cd5\u4e8c\uff1a\u7d22\u5f15<\/h5>\n<p>\u5982\u679c\u4e0d\u4f7f\u7528<code>rename()<\/code>\uff0c\u4e5f\u53ef\u4ee5\u5c06index\u548ccolumns\u5c5e\u6027\u63d0\u53d6\u51fa\u6765\uff0c\u4fee\u6539\u4e4b\u540e\u518d\u8d4b\u503c\u56de\u53bb<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col = &#039;movie_title&#039;)\n\n# \u53d6\u51faindex\nb = a.index.tolist()\n# \u53d6\u51facolumns\nc = a.columns.tolist()\n\nprint(b)\nprint(c)\n\n# \u4fee\u6539\nb[0] = &#039;\u8096\u751f\u514b\u7684\u6551\u8d4e&#039;\nc[0] = &#039;\u7535\u5f71\u8bc4\u5206&#039;\n\nl = a.index = b\nr = a.columns = c\n\nprint(a)\n<\/code><\/pre>\n<p>\u4fee\u6539\u5217\u540d\/\u884c\u7d22\u5f15\uff0c\u4e5f\u53ef\u4ee5\u76f4\u63a5\u751f\u6210\u4e00\u4e2alist\uff0c\u5b58\u7684\u662f\u8981\u4fee\u6539\u7684\u884c\u7d22\u5f15\/\u5217\u540d\uff0c\u8986\u76d6\u6389\u539f\u59cb\u7684index\/columns<\/p>\n<h4>\u6dfb\u52a0\u3001\u5220\u9664\u3001\u63d2\u5165\u5217<\/h4>\n<h5>\u6dfb\u52a0\u5217<\/h5>\n<p><strong>\u8bed\u6cd5<\/strong><\/p>\n<pre><code class=\"language-python\">df[&#039;\u5217\u540d&#039;] = \u503c\t# \u6dfb\u52a0\u7684\u5217\u4e2d\u503c\u90fd\u662f\u76f8\u540c\u7684\ndf[&#039;\u5217\u540d&#039;] = df[&#039;\u5217\u540d1&#039;]+df[&#039;\u5217\u540d2&#039;]...\t# \u901a\u8fc7\u8fd0\u7b97\u5f97\u5230\n<\/code><\/pre>\n<p>\u901a\u8fc7<code>dataframe[\u5217\u540d]<\/code>\u6dfb\u52a0\u65b0\u5217<\/p>\n<pre><code class=\"language-python\">import pandas as pd\nfrom datetime import datetime as dt\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col = &#039;movie_title&#039;)\n\n# \u6dfb\u52a0\u5217\na[&#039;like&#039;] = &#039;no&#039;\n\nnow_year = dt.now().year\n# \u6dfb\u52a0\u5217\u5e76\u8d4b\u503c\na[&#039;years_issuance&#039;] = now_year - a[&#039;movie_year&#039;]\nprint(a)\n<\/code><\/pre>\n<h5>\u63d2\u5165\u5217<\/h5>\n<p><strong>\u8bed\u6cd5<\/strong><\/p>\n<pre><code class=\"language-python\">df.insert(lco=\u4f4d\u7f6e,column=&#039;\u65b0\u5217\u540d&#039;,value=\u503c)\n<\/code><\/pre>\n<ul>\n<li>loc\uff1a\u63d2\u5165\u7684\u4f4d\u7f6e(0,1,2,&#8230;)<\/li>\n<li>column\uff1a\u65b0\u63d2\u5165\u7684\u5217\u540d<\/li>\n<li>value\uff1a\u65b0\u63d2\u5165\u7684\u5217\u7684\u662f\u600e\u4e48\u8ba1\u7b97\u7684<\/li>\n<\/ul>\n<p>\u4f7f\u7528<code>insert()<\/code>\u65b9\u6cd5\u63d2\u5165\u5217<code>loc<\/code>\u65b0\u63d2\u5165\u7684\u5217\u5728\u6240\u6709\u5217\u4e2d\u7684\u4f4d\u7f6e(0,1,2,3,&#8230;)column=\u5217\u540d value=\u503c<\/p>\n<pre><code class=\"language-python\">import pandas as pd\nfrom datetime import datetime as dt\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col = &#039;movie_title&#039;)\n\n# \u63d2\u5165\u5217\nnow_year = dt.now().year\n# \u63d2\u5165\u5217\u5e76\u8d4b\u503c\na.insert(loc=2,column=&#039;years_issuance&#039;,value=now_year-a[&#039;movie_year&#039;])\nprint(a[:4].to_string())\n<\/code><\/pre>\n<h5>\u5220\u9664\u5217<\/h5>\n<p><strong>\u8bed\u6cd5<\/strong><\/p>\n<pre><code class=\"language-python\"># \u5220\u9664\u5217\ndf.drop(columns=&#039;\u5217\u540d&#039;)\n# \u5220\u9664\u884c\ndf.drop(index=&#039;\u884c\u540d&#039;)\n# \u7528\u6cd5\u4e8c\ndf.drop(&#039;\u5217\u540d\/\u884c\u540d&#039;,axis=&#039;index\/columns&#039;)\n<\/code><\/pre>\n<p>\u8c03\u7528<code>drop()<\/code>\u65b9\u6cd5\u5220\u9664\u5217<\/p>\n<pre><code class=\"language-python\">import pandas as pd\nfrom datetime import datetime as dt\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col = &#039;movie_title&#039;)\n\n# \u63d2\u5165\u5217\nnow_year = dt.now().year\n# \u63d2\u5165\u5217\u5e76\u8d4b\u503c\na.insert(loc=2,column=&#039;years_issuance&#039;,value=now_year-a[&#039;movie_year&#039;])\n\n# \u5220\u9664\u5217\na.drop(columns=&#039;years_issuance&#039;,inplace=True)\n# \u5220\u9664\u884c\na.drop(index=&#039;The Shawshank \tRedemption&#039;,inplace=True)\nprint(a[:4].to_string())\n<\/code><\/pre>\n<h2>\u4e94\u3001\u6570\u636e\u7684\u5bfc\u5165\u548c\u5bfc\u51fa<\/h2>\n<h3>1.pickle\u6587\u4ef6<\/h3>\n<h4>\u4fdd\u5b58\u6210pickle\u6587\u4ef6<\/h4>\n<ul>\n<li>\u8c03\u7528<code>to_pickle()<\/code>\u65b9\u6cd5\u5c06\u4ee5\u4e8c\u8fdb\u5236\u683c\u5f0f\u4fdd\u5b58\u6570\u636e<\/li>\n<li>\u5982\u679c\u8981\u4fdd\u5b58\u7684\u5bf9\u8c61\u662f\u8ba1\u7b97\u7684\u4e2d\u95f4\u7ed3\u679c\uff0c\u6216\u8005\u4fdd\u5b58\u7684\u5bf9\u8c61\u4ee5\u540e\u4f1a\u5728python\u4e2d\u590d\u7528\uff0c\u53ef\u628a\u5bf9\u8c61\u4fdd\u5b58\u4e3a<code>.pickle<\/code>\u6587\u4ef6<\/li>\n<li>\u5982\u679c\u4fdd\u5b58\u6210pickle\u6587\u4ef6\uff0c\u53ea\u80fd\u5728python\u4e2d\u4f7f\u7528<\/li>\n<li>\u6587\u4ef6\u6269\u5c55\u540d\u53ef\u4ee5\u662f<code>.p<\/code>\/<code>.pkl<\/code>\/<code>.plckle<\/code><\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nmovies = a[&#039;movie_title&#039;]\n# \u4fdd\u5b58\u4e3apickle\u6587\u4ef6\nmovies.to_pickle(&#039;movie_title.p&#039;)\na.to_pickle(&#039;a.p&#039;)\n<\/code><\/pre>\n<h4>\u8bfb\u53d6pickle\u6587\u4ef6<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nmovies = a[&#039;movie_title&#039;]\n# \u4fdd\u5b58\u4e3apickle\u6587\u4ef6\nmovies.to_pickle(&#039;movie_title.p&#039;)\na.to_pickle(&#039;a.p&#039;)\n\n# \u8bfb\u53d6\ns = pd.read_pickle(&#039;movie_title.p&#039;)\na = pd.read_pickle(&#039;a.p&#039;)\nprint(s)\nprint(a)\n<\/code><\/pre>\n<h3>2.CSV\u6587\u4ef6<\/h3>\n<h4>\u4fdd\u5b58\u6210CSV\u6587\u4ef6<\/h4>\n<ul>\n<li>CSV(\u9017\u53f7\u5206\u9694\u503c)\u662f\u5f88\u7075\u6d3b\u7684\u4e00\u79cd\u6570\u636e\u5b58\u50a8\u683c\u5f0f<\/li>\n<li>\u5728CSV\u6587\u4ef6\u4e2d\uff0c\u5bf9\u4e8e\u6bcf\u4e00\u884c\uff0c\u5404\u5217\u91c7\u7528\u9017\u53f7\u5206\u9694<\/li>\n<li>\u9664\u4e86\u9017\u53f7\uff0c\u8fd8\u53ef\u4ee5\u4f7f\u7528\u5176\u4ed6\u7c7b\u578b\u7684\u5206\u9694\u7b26\uff0c\u6bd4\u5982TSV\u6587\u4ef6\uff0c\u4f7f\u7528\u5236\u8868\u7b26\u4f5c\u4e3a\u5206\u9694\u7b26<\/li>\n<li>CSV\u662f\u6570\u636e\u534f\u4f5c\u548c\u5171\u4eab\u7684\u9996\u9009\u683c\u5f0f<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nmovie_title = a[&#039;movie_title&#039;]\n# \u4fdd\u5b58\u4e3aCSV\u6587\u4ef6\nmovie_title.to_csv(&#039;movie_title.csv&#039;)\n\n# \u6307\u5b9a\u5206\u9694\u7b26\nmovie_title.to_csv(&#039;movie_title.csv&#039;,sep=&#039;\/&#039;)\n# \u8bbe\u7f6e\u4e3a\/\u540e\u4e5f\u5f97\u4f7f\u7528\/\u6253\u5f00\n# c = pd.read_csv(&#039;movie_title.csv&#039;,sep=&#039;\/&#039;)\n\n# \u53bb\u9664unnamed\nmovie_title.to_csv(&#039;movie_title.csv&#039;,index=False)\n<\/code><\/pre>\n<h3>3.Excel\u6587\u4ef6<\/h3>\n<h4>\u4fdd\u5b58\u6210Excel\u6587\u4ef6<\/h4>\n<ul>\n<li>series\u8fd9\u79cd\u7ed3\u6784\u4e0d\u652f\u6301<code>to_excel()<\/code>\u65b9\u6cd5\uff0c\u60f3\u8981\u4fdd\u5b58\u6210Excel\u6587\u4ef6\uff0c\u9700\u8981\u628aSeries\u8f6c\u6362\u6210Dataframe<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\nmovie_title = a[&#039;movie_title&#039;]\n# \u4fdd\u5b58\u4e3aexcel\u6587\u4ef6\nmovie_title.to_excel(&#039;movie_title.xlsx&#039;,index=False)\na.to_excel(&#039;a.xlsx&#039;,index=False,sheet_name=&#039;\u7535\u5f71\u6392\u884c&#039;)\n# sheet_name\uff1a\u8868\u540d\n\n# \u52a0\u8f7d\u6587\u4ef6\nc = pd.read_excel(&#039;a.xlsx&#039;)\nprint(c)\n<\/code><\/pre>\n<h3>4.\u5176\u4ed6\u6570\u636e\u683c\u5f0f<\/h3>\n<h4>feather\u6587\u4ef6<\/h4>\n<ul>\n<li>feather\u662f\u4e00\u79cd\u6587\u4ef6\u683c\u5f0f\uff0c\u7528\u4e8e\u5b58\u50a8\u4e8c\u8fdb\u5236\u5bf9\u8c61<\/li>\n<li>feather\u5bf9\u8c61\u4e5f\u53ef\u4ee5\u52a0\u8f7d\u5230R\u8bed\u8a00\u4e2d\u4f7f\u7528<\/li>\n<li>feather\u683c\u5f0f\u7684\u4e3b\u8981\u4f18\u70b9\u662f\u5728python\u548cR\u8bed\u8a00\u4e4b\u95f4\u4f20\u9012\u6570\u636e<\/li>\n<li>\u4e00\u822c\u4e0d\u7528\u505a\u4fdd\u5b58\u6700\u7ec8\u6570\u636e<\/li>\n<\/ul>\n<table>\n<thead>\n<tr>\n<th>\u5bfc\u51fa\u65b9\u6cd5<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>to_clipboard()<\/td>\n<td>\u628a\u6570\u636e\u5b58\u5230\u7cfb\u7edf\u526a\u8d34\u677f\uff0c\u65b9\u4fbf\u7c98\u8d34<\/td>\n<\/tr>\n<tr>\n<td>to_dict()<\/td>\n<td>\u628a\u6570\u636e\u8f6c\u6362\u6210python\u5b57\u5178<\/td>\n<\/tr>\n<tr>\n<td>to_hdf()<\/td>\n<td>\u628a\u6570\u636e\u4fdd\u5b58\u4e3aHDF\u683c\u5f0f<\/td>\n<\/tr>\n<tr>\n<td>to_html()<\/td>\n<td>\u628a\u6570\u636e\u8f6c\u6362\u6210HTML<\/td>\n<\/tr>\n<tr>\n<td>to_json()<\/td>\n<td>\u628a\u6570\u636e\u8f6c\u5316\u6210JSON\u5b57\u7b26\u4e32<\/td>\n<\/tr>\n<tr>\n<td>to_sql()<\/td>\n<td>\u628a\u6570\u636e\u4fdd\u5b58\u5230SQL\u6570\u636e\u5e93<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>\u516d\u3001pandas Dataframe\u5165\u95e8<\/h2>\n<h3>1.\u52a0\u8f7d\u6570\u636e\u96c6<\/h3>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\n# \u8fd4\u56de\u6570\u636e\u7c7b\u578b\nprint(type(a))\n# \u67e5\u770b\u884c\u5217\u6570\nprint(a.shape)\n# \u5143\u7d20\u6570\u91cf\nprint(a.size)\n# \u83b7\u53d6\u5217\u540d\nprint(a.columns)\n# \u67e5\u770b\u5c5e\u6027\nprint(a.dtypes)\nprint(a.info())\n<\/code><\/pre>\n<h4>pandas\u4e0epython\u5e38\u7528\u6570\u636e\u7c7b\u578b\u5bf9\u7167<\/h4>\n<table>\n<thead>\n<tr>\n<th>pandas\u7c7b\u578b<\/th>\n<th>python\u7c7b\u578b<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Object<\/td>\n<td>string<\/td>\n<td>\u5b57\u7b26\u4e32\u7c7b\u578b<\/td>\n<\/tr>\n<tr>\n<td>int64<\/td>\n<td>int<\/td>\n<td>\u6574\u578b<\/td>\n<\/tr>\n<tr>\n<td>float64<\/td>\n<td>float<\/td>\n<td>\u6d6e\u70b9\u578b<\/td>\n<\/tr>\n<tr>\n<td>datetime64<\/td>\n<td>datetime<\/td>\n<td>\u65e5\u671f\u65f6\u95f4\u7c7b\u578b\uff0cpython\u4e2d\u9700\u8981\u52a0\u8f7d<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>2.\u67e5\u770b\u90e8\u5206\u6570\u636e<\/h3>\n<h4>\u6839\u636e\u5217\u540d\u52a0\u8f7d\u90e8\u5206\u6570\u636e<\/h4>\n<p>\u52a0\u8f7d\u4e00\u5217\u6570\u636e\uff0c\u901a\u8fc7<code>df[\u2018\u5217\u540d\u2019]<\/code>\u65b9\u5f0f\u83b7\u53d6<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\n# \u83b7\u53d6movie_title\u8fd9\u5217\nc = a[&#039;movie_title&#039;]\n# \u83b7\u53d6\u524d5\u884c\nc = c.head()\nprint(c)\n<\/code><\/pre>\n<p>\u52a0\u8f7d\u591a\u5217\u6570\u636e\uff0c\u901a\u8fc7<code>df[[\u2018\u5217\u540d1\u2019,\u2019\u5217\u540d2\u2019,...]]<\/code><\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;)\n# \u83b7\u53d6\u591a\u5217\nc = a[[&#039;movie_title&#039;,&#039;movie_rating&#039;]]\n# \u83b7\u53d6\u540e5\u5217\nc = c.tail()\nprint(c)\n<\/code><\/pre>\n<h4>\u6309\u884c\u52a0\u8f7d\u90e8\u5206\u6570\u636e<\/h4>\n<p>loc\uff1a\u901a\u8fc7\u884c\u7d22\u5f15\u83b7\u53d6\u6307\u5b9a\u884c\u6570\u636e<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col=&#039;movie_title&#039;)\n# \u89c2\u5bdf\u524d5\u884c\u6570\u636e\nprint(a.head())\n# \u53d6\u51fa\u6307\u5b9a\u884c\nc = a.loc[&#039;The Godfather&#039;]    # \u7d22\u5f15\u540d\nd = a.iloc[0]   # \u884c\u53f7\nprint(c)\nprint(&#039;*&#039;*80)\nprint(d)\n<\/code><\/pre>\n<h4>\u83b7\u53d6\u6307\u5b9a\u884c\/\u5217\u6570\u636e<\/h4>\n<p><code>loc<\/code>\u548c<code>iloc<\/code>\u5c5e\u6027\u53ef\u4ee5\u7528\u4e8e\u83b7\u53d6\u5217\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u7528\u4e8e\u83b7\u53d6\u884c\u6570\u636e<\/p>\n<ul>\n<li>df.loc[[\u884c\u7d22\u5f15\u540d],[\u5217\u540d]]<\/li>\n<li>df.iloc[[\u884c],[\u5217]]<\/li>\n<\/ul>\n<p>\u4f7f\u7528<code>loc<\/code>\u83b7\u53d6\u6570\u636e\u4e2d\u76841\u5217\/\u51e0\u5217<\/p>\n<ul>\n<li>df.loc[[\u6240\u6709\u884c],[\u5217\u540d]]<\/li>\n<li>\u53d6\u51fa\u6240\u6709\u884c\uff0c\u53ef\u4ee5\u4f7f\u7528\u5207\u7247\u8bed\u6cd5df.loc[:,[\u5217\u540d]]<\/li>\n<\/ul>\n<p>\u4f7f\u7528<code>iloc<\/code>\u83b7\u53d6\u6570\u636e\u4e2d\u7684\u7b2c1\u5217\/\u51e0\u5217<\/p>\n<ul>\n<li>df.iloc[:,[\u5217\u5e8f\u53f7]]\uff1a\u5217\u5e8f\u53f7\u53ef\u4ee5\u4f7f\u7528-1\u4ee3\u8868\u6700\u540e\u4e00\u5217<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\na = pd.read_csv(&#039;movie.csv&#039;,index_col=&#039;movie_title&#039;)\n# \u83b7\u53d6\u7b2c\u4e94\u884c\uff0c\u7b2c\u4e8c\u5217\nb = a.iloc[[4],[0]]\nc = a.loc[[&#039;12 Angry Men&#039;],[&#039;movie_rating&#039;]]\n# \u83b7\u53d6\u6307\u5b9a\u5217\u7684\u6240\u6709\u884c\nd = a.loc[:,[&#039;movie_rating&#039;]]\ne = a.iloc[:,[0,1,-1]]\nprint(a[:5])\nprint(b)\nprint(c)\nprint(d)\nprint(e)\n<\/code><\/pre>\n<p>\u83b7\u53d6\u591a\u884c\u591a\u5217<\/p>\n<ul>\n<li>\n<p>\u53ef\u4ee5\u628a\u83b7\u53d6\u5355\u884c\u5355\u5217\u7684\u8bed\u6cd5\u548c\u83b7\u53d6\u591a\u884c\u591a\u5217\u7684\u8bed\u6cd5\u7ed3\u5408\u8d77\u6765\u4f7f\u7528<\/p>\n<\/li>\n<li>\n<p>\u83b7\u53d6\u7b2c\u4e00\u5217\uff0c\u7b2c\u56db\u516d\uff0c\u7b2c\u516d\u5217\uff0c\u6570\u636e\u4e2d\u7684\u7b2c1\u884c\uff0c\u7b2c100\u884c\u548c\u7b2c1000\u884c<\/p>\n<pre><code class=\"language-python\">print(df.iloc[[0,100,1000],[0,3,5]])\n<\/code><\/pre>\n<\/li>\n<li>\n<p>\u5728\u5b9e\u9645\u5de5\u4f5c\u4e2d\uff0c\u83b7\u53d6\u67d0\u51e0\u5217\u7684\u6570\u636e\u7684\u65f6\u5019\uff0c\u5efa\u8bae\u4f20\u5165\u5b9e\u9645\u7684\u5217\u540d\uff0c\u597d\u5904\uff1a<\/p>\n<ul>\n<li>\u589e\u52a0\u4ee3\u7801\u7684\u53ef\u8bfb\u6027<\/li>\n<li>\u907f\u514d\u56e0\u5217\u987a\u5e8f\u7684\u53d8\u5316\u5bfc\u81f4\u53d6\u51fa\u9519\u8bef\uff0c\u5217\u7684\u6570\u636e<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>3.\u5206\u7ec4\u548c\u805a\u5408\u8ba1\u7b97<\/h3>\n<p>gapminder\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"https:\/\/github.com\/jennybc\/gapminder\/blob\/main\/inst\/extdata\/gapminder.tsv\">gapminder.tsv<\/a><\/p>\n<blockquote>\n<p>\u4e0d\u8981\u95ee\u6211\u4e3a\u5565\u77e5\u9053\u6587\u4ef6\u5728\u54ea\u4e0b\u7684\uff0c\u6211\u4e5f\u662f\u81ea\u5df1\u627e\u5230\u7684:dog::feet:<\/p>\n<p>github\u4e0d\u4f1a\u4e0b\u4e1c\u897f\u7684\u8bdd\uff0c\u90a3\u6211\u6ca1\u62db\u4e86\uff0c\u81ea\u5df1\u95ee<a href=\"https:\/\/www.doubao.com\/chat\/\">\u8c46\u5305<\/a>\u5427<br \/>github\u6709\u65f6\u5019\u8fdb\u4e0d\u53bb\u5f88\u6b63\u5e38\uff0c\u56e0\u4e3a\u4e0d\u662f\u56fd\u5185\u7684\uff0c\u6ca1\u529e\u6cd5\u76f4\u8fde\uff0c\u6709\u79d1\u5b66\u4e0a\u7f51\u7684\u7528\u79d1\u5b66\u4e0a\u7f51\uff0c\u6ca1\u6709\u79d1\u5b66\u4e0a\u7f51\u7684\u53ef\u4ee5\u4f7f\u7528\u4e2d\u56fd\u955c\u50cf\u7ad9<\/p>\n<\/blockquote>\n<p>\u5728\u4f7f\u7528Excel\u6216\u8005SQL\u8fdb\u884c\u6570\u636e\u5904\u7406\u65f6\uff0cExcel\u548cSQL\u90fd\u63d0\u4f9b\u4e86\u57fa\u672c\u7684\u7edf\u8ba1\u8ba1\u7b97\u529f\u80fd<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;gapminder.tsv&#039;, sep=&#039;t&#039;)\nprint(df[:10])\n<\/code><\/pre>\n<p>\u7ed3\u679c\uff1a<\/p>\n<pre><code class=\"language-python\">       country continent  year  lifeExp       pop   gdpPercap\n0  Afghanistan      Asia  1952   28.801   8425333  779.445314\n1  Afghanistan      Asia  1957   30.332   9240934  820.853030\n2  Afghanistan      Asia  1962   31.997  10267083  853.100710\n3  Afghanistan      Asia  1967   34.020  11537966  836.197138\n4  Afghanistan      Asia  1972   36.088  13079460  739.981106\n5  Afghanistan      Asia  1977   38.438  14880372  786.113360\n6  Afghanistan      Asia  1982   39.854  12881816  978.011439\n7  Afghanistan      Asia  1987   40.822  13867957  852.395945\n8  Afghanistan      Asia  1992   41.674  16317921  649.341395\n9  Afghanistan      Asia  1997   41.763  22227415  635.341351\n<\/code><\/pre>\n<p>\u9700\u6c42\uff1a<\/p>\n<ul>\n<li>\u6bcf\u4e00\u5e74\u7684\u5e73\u5747\u9884\u671f\u5bff\u547d\u7684\u591a\u5c11\uff1f\u6bcf\u4e00\u5e74\u7684\u5e73\u5747\u4eba\u53e3\u548c\u5e73\u5747GDP\u662f\u591a\u5c11\uff1f<\/li>\n<li>\u5982\u679c\u6211\u4eec\u6309\u7167\u5927\u6d32\u8ba1\u7b97\uff0c\u6bcf\u5e74\u6bcf\u4e2a\u5927\u6d32\u7684\u5e73\u5747\u9884\u671f\u5bff\u547d\uff0c\u5e73\u5747\u4eba\u53e3\uff0c\u5e73\u5747GDP\u60c5\u51b5\u53c8\u5982\u4f55\uff1f<\/li>\n<li>\u5728\u6570\u636e\u4e2d\uff0c\u6bcf\u4e2a\u5927\u6d32\u5217\u51fa\u4e86\u591a\u5c11\u4e2a\u56fd\u5bb6\u548c\u5730\u533a\uff1f<\/li>\n<\/ul>\n<h4>\u5206\u7ec4\u65b9\u5f0f<\/h4>\n<p>\u5bf9\u4e8e\u4e0a\u9762\u63d0\u51fa\u7684\u95ee\u9898\uff0c\u9700\u8981\u8fdb\u884c\u5206\u7ec4-\u805a\u5408\u8ba1\u7b97<\/p>\n<ul>\n<li>\u5148\u5c06\u6570\u636e\u5206\u7ec4(\u6bcf\u4e00\u5e74\u7684\u5e73\u5747\u9884\u671f\u5bff\u547d\u95ee\u9898\uff0c\u6309\u7167\u5e74\u4efd\u5c06\u76f8\u540c\u5e74\u4efd\u7684\u6570\u636e\u5206\u6210\u4e00\u7ec4)<\/li>\n<li>\u5bf9\u9b45\u65cf\u7684\u6570\u636e\u518d\u53bb\u8fdb\u884c\u7edf\u8ba1\u8ba1\u7b97\u5982\uff0c\u6c42\u5e73\u5747\uff0c\u6c42\u6bcf\u6761\u6570\u636e\u6761\u76ee\u6570(\u9891\u6570)\u7b49<\/li>\n<li>\u518d\u5c06\u6bcf\u4e00\u7ec4\u8ba1\u7b97\u7684\u7ed3\u679c\u5408\u5e76\u8d77\u6765<\/li>\n<li>\u53ef\u4ee5\u4f7f\u7528dataframe\u7684groupby\u65b9\u6cd5\u5b8c\u6210\u5206\u7ec4\/\u805a\u5408\u8ba1\u7b97<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;gapminder.tsv&#039;, sep=&#039;t&#039;)\n# \u6bcf\u4e00\u5e74\u7684\u5e73\u5747\u9884\u671f\u5bff\u547d\u7684\u591a\u5c11\uff1f\nprint(df.groupby(&#039;year&#039;)[&#039;lifeExp&#039;].mean())\n# \u6bcf\u4e00\u5e74\u7684\u5e73\u5747\u4eba\u53e3\u548c\u5e73\u5747GDP\u662f\u591a\u5c11\uff1f\nprint(df.groupby(&#039;year&#039;)[&#039;pop&#039;].mean())    # \u5e73\u5747\u4eba\u53e3\nprint(df.groupby(&#039;year&#039;)[&#039;gdpPercap&#039;].mean())   # \u5e73\u5747GDP\n# \u6bcf\u5e74\u6bcf\u4e2a\u5927\u6d32\u7684\u5e73\u5747\u9884\u671f\u5bff\u547d\uff0c\u5e73\u5747\u4eba\u53e3\uff0c\u5e73\u5747GDP\u60c5\u51b5\u53c8\u5982\u4f55\uff1f\nprint(df.groupby([&#039;continent&#039;,&#039;year&#039;])[[&#039;lifeExp&#039;,&#039;pop&#039;,&#039;gdpPercap&#039;]].mean())\n# \u6bcf\u4e2a\u5927\u6d32\u5217\u51fa\u4e86\u591a\u5c11\u4e2a\u56fd\u5bb6\u548c\u5730\u533a\uff1f\nprint(df.groupby(&#039;continent&#039;)[&#039;country&#039;].nunique())\n<\/code><\/pre>\n<ul>\n<li>df.groupby(&#039;year&#039;)\uff1a\u5206\u7ec4\u5bf9\u8c61\uff0c\u53ef\u8fed\u4ee3\u5bf9\u8c61\uff0c\u5b58\u7684\u662f\u5df2\u5206\u7ec4\u540e\u7684\u7ed3\u679c<\/li>\n<li>df.groupby(&#039;year&#039;)[&#039;lifeExp&#039;]\uff1a\u5bf9\u6bcf\u4e2a\u5206\u7ec4\u53d6lifeExp\u5217<\/li>\n<li>df.groupby(&#039;year&#039;)[&#039;lifeExp&#039;].mean()\uff1a\u5bf9\u6bcf\u4e2a\u5206\u7ec4\u4e2d\u7684lifeExp\u8fdb\u884c\u6c42\u5e73\u5747\u503c<\/li>\n<\/ul>\n<h4>\u5206\u7ec4\u9891\u6570\u8ba1\u7b97<\/h4>\n<p>\u5728\u6570\u636e\u5206\u6790\u4e2d\uff0c\u4e00\u4e2a\u5e38\u89c1\u7684\u4efb\u52a1\u5c31\u662f\u8ba1\u7b97\u9891\u6570<\/p>\n<ul>\n<li>\u53ef\u4ee5\u4f7f\u7528<code>nunique()<\/code>\u65b9\u6cd5\u8ba1\u7b97\uff0cpandas series\u7684\u552f\u4e00\u8ba1\u6570<\/li>\n<li>\u53ef\u4ee5\u4f7f\u7528<code>value_counts()<\/code>\u65b9\u6cd5\u6765\u83b7\u53d6pandas series\u7684\u9891\u6570\u7edf\u8ba1<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;gapminder.tsv&#039;, sep=&#039;t&#039;)\n# print(df.head())\n# \u6bcf\u4e2a\u5927\u6d32\u5217\u51fa\u4e86\u591a\u5c11\u4e2a\u56fd\u5bb6\u548c\u5730\u533a\uff1f\n# \u65b9\u6cd5\u4e00\nprint(df.groupby(&#039;continent&#039;)[&#039;country&#039;].nunique())\n# \u65b9\u6cd5\u4e8c\nprint(df.groupby(&#039;continent&#039;)[&#039;country&#039;].value_counts())\n<\/code><\/pre>\n<h3>4.\u7b80\u5355\u7ed8\u56fe<\/h3>\n<p>\u53ef\u89c6\u5316\u662f\u5728\u6570\u636e\u5206\u6790\u7684\u6bcf\u4e2a\u6b65\u9aa4\u90fd\u975e\u5e38\u91cd\u8981\uff0c\u5728\u7406\u89e3\u6216\u6e05\u7406\u6570\u636e\u65f6\uff0c\u53ef\u89c6\u5316\u6709\u52a9\u4e8e\u8bc6\u522b\u6570\u636e\u4e2d\u7684\u8d8b\u52bf<\/p>\n<h4><code>plot()<\/code>\u6298\u7ebf\u56fe<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;gapminder.tsv&#039;, sep=&#039;t&#039;)\naverage_life_expectancy = df.groupby(&#039;year&#039;)[&#039;lifeExp&#039;].mean()  # \u5e73\u5747\u9884\u671f\u5bff\u547d\naverage_life_expectancy.plot()\n<\/code><\/pre>\n<h4><code>hist()<\/code>\u76f4\u65b9\u56fe<\/h4>\n<pre><code class=\"language-python\">average_life_expectancy.hist()\n<\/code><\/pre>\n<h2>\u4e03\u3001Pandas\u6570\u636e\u5206\u6790\u5165\u95e8<\/h2>\n<h3>1.\u8ba1\u7b97\u5e38\u7528\u7edf\u8ba1\u503c<\/h3>\n<p>\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"https:\/\/collegescorecard.ed.gov\/data\">\u7f8e\u56fd\u6559\u80b2\u90e8\u516c\u5f00\u5927\u5b66\u6570\u636e\u5e73\u53f0<\/a><\/p>\n<blockquote>\n<p>\u8fdb\u5165\u7f51\u7ad9\u540e\u4e0b\u8f7d\uff1aAll Data Files(\u5168\u90e8\u6570\u636e\u6587\u4ef6)<\/p>\n<p>\u4e0b\u8f7d\u597d\u540e\u8fdb\u884c<strong>\u89e3\u538b<\/strong>\uff0c\u627e\u5230Most-Recent-Cohorts-Institution.csv\u8fd9\u4e2a\u6587\u4ef6<\/p>\n<p>\u7136\u540e\u5c06\u8981\u7528\u7684\u63d0\u53d6\u51fa\u6765\u5c31\u884c<\/p>\n<p><strong>\u63d0\u53d6\u4ee3\u7801<\/strong><\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;Most-Recent-Cohorts-Institution.csv&#039;,low_memory=False)\n# \u9700\u8981\u4fdd\u7559\u7684\u5217\ncolumns_to_keep = [\n    &#039;INSTNM&#039;, &#039;CITY&#039;, &#039;STABBR&#039;, &#039;HBCU&#039;, &#039;MENONLY&#039;, &#039;WOMENONLY&#039;, &#039;RELAFFIL&#039;,\n    &#039;SATVRMID&#039;, &#039;SATMTMID&#039;, &#039;DISTANCEONLY&#039;,\n    &#039;UGDS&#039;, &#039;UGDS_WHITE&#039;, &#039;UGDS_BLACK&#039;, &#039;UGDS_HISP&#039;, &#039;UGDS_ASIAN&#039;, &#039;UGDS_AIAN&#039;,\n    &#039;UGDS_NHPI&#039;, &#039;UGDS_2MOR&#039;, &#039;UGDS_NRA&#039;, &#039;UGDS_UNKN&#039;, &#039;PPTUG_EF&#039;,\n    &#039;CURROPER&#039;, &#039;PCTPELL&#039;, &#039;PCTFLOAN&#039;, &#039;UG25ABV&#039;, &#039;MD_EARN_WNE_P10&#039;, &#039;GRAD_DEBT_MDN_SUPP&#039;\n]\ndf = df[columns_to_keep]\ndf.to_csv(&#039;colleges.csv&#039;, index=False)\n<\/code><\/pre>\n<\/blockquote>\n<p>\u52a0\u8f7d\u6570\u636e\u540e\uff0c\u53ef\u4ee5\u901a\u8fc7\u8ba1\u7b97\u6700\u5927\u503c\uff0c\u6700\u5c0f\u503c\uff0c\u5e73\u5747\u503c\uff0c\u5206\u4f4d\u6570\uff0c\u65b9\u5dee\u7b49\u65b9\u5f0f\u5bf9\u6570\u636e\u7684\u5206\u5e03\u60c5\u51b5\u505a\u57fa\u672c\u4e86\u89e3<\/p>\n<h4>\u7edf\u8ba1\u6570\u503c\u5217\uff0c\u5e76\u8fdb\u884c\u8f6c\u7f6e<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\ncolleges = pd.read_csv(&#039;colleges.csv&#039;)\n\nprint(colleges.describe().T)\n<\/code><\/pre>\n<p>\u7ed3\u679c<\/p>\n<pre><code class=\"language-python\">                  count          mean           std        min           25%          50%           75%          max\nHBCU             5910.0      0.017259      0.130245     0.0000      0.000000      0.00000      0.000000       1.0000\nMENONLY          5924.0      0.010297      0.100959     0.0000      0.000000      0.00000      0.000000       1.0000\nWOMENONLY        5924.0      0.005064      0.070988     0.0000      0.000000      0.00000      0.000000       1.0000\nRELAFFIL          878.0     56.037585     22.333529    22.0000     30.000000     54.00000     72.500000     110.0000\nSATVRMID          965.0    581.603109     65.900615   395.0000    535.000000    575.00000    620.000000     760.0000\nSATMTMID          965.0    575.289119     74.392549   395.0000    525.000000    564.00000    615.000000     785.0000\nDISTANCEONLY     5924.0      0.010804      0.103386     0.0000      0.000000      0.00000      0.000000       1.0000\nUGDS             5656.0   2488.466054   6157.338709     0.0000    116.000000    494.00000   2074.000000  156755.0000\nUGDS_WHITE       5656.0      0.446514      0.279656     0.0000      0.200450      0.46430      0.675600       1.0000\nUGDS_BLACK       5656.0      0.185987      0.221537     0.0000      0.038275      0.09900      0.245625       1.0000\nUGDS_HISP        5656.0      0.207678      0.231515     0.0000      0.051700      0.12060      0.278975       1.0000\nUGDS_ASIAN       5656.0      0.039212      0.076288     0.0000      0.003800      0.01575      0.039825       1.0000\nUGDS_AIAN        5656.0      0.014218      0.074796     0.0000      0.000000      0.00220      0.007000       1.0000\nUGDS_NHPI        5656.0      0.004394      0.031934     0.0000      0.000000      0.00050      0.002500       0.9983\nUGDS_2MOR        5656.0      0.036967      0.043094     0.0000      0.008700      0.03190      0.050125       1.0000\nUGDS_NRA         5656.0      0.022250      0.061891     0.0000      0.000000      0.00060      0.019600       1.0000\nUGDS_UNKN        5656.0      0.039952      0.091475     0.0000      0.000000      0.01280      0.036100       1.0000\nPPTUG_EF         5625.0      0.236278      0.265725     0.0000      0.000000      0.12320      0.420000       1.0000\nCURROPER         6429.0      0.962669      0.189586     0.0000      1.000000      1.00000      1.000000       1.0000\nPCTPELL          5612.0      0.424001      0.214319     0.0000      0.265150      0.39385      0.568250       1.0000\nPCTFLOAN         5612.0      0.409069      0.274564     0.0000      0.152500      0.44265      0.631300       1.0000\nUG25ABV          5558.0      0.351580      0.245947     0.0005      0.150325      0.31290      0.516875       1.0000\nMD_EARN_WNE_P10  5280.0  43508.301136  17033.197929  8579.0000  31830.000000  40567.50000  51994.000000  143372.0000\n<\/code><\/pre>\n<h4>\u7edf\u8ba1\u5bf9\u8c61\u548c\u7c7b\u578b\u5217<\/h4>\n<h5>\u67e5\u770b\u6bcf\u4e2a\u5217\u7684\u7edf\u8ba1\u503c<\/h5>\n<ul>\n<li>pandas\u57fa\u4e8enumpy\uff0cnumpy\u652f\u6301\u7684\u6570\u636e\u7c7b\u578b\uff0cpandas\u90fd\u652f\u6301<\/li>\n<li>np.object\uff1a\u5b57\u7b26\u4e32\u7c7b\u578b<\/li>\n<li>np.Categorical\uff1a\u7c7b\u522b\u7c7b\u578b<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import numpy as np\ncolleges.describe(include=[np.object,np.Categorical]).T\n<\/code><\/pre>\n<pre><code class=\"language-python\">import pandas as pd\n\ncolleges = pd.read_csv(&#039;colleges.csv&#039;)\nprint(colleges.describe(include=&#039;all&#039;).T)   # \u7edf\u8ba1\u6240\u6709\u7684\u5217\uff0c\u5305\u62ec\u6570\u503c\u5217\u548c\u7c7b\u522b\u7c7b\u578b \u5b57\u7b26\u4e32\u7c7b\u578b\n# \u8001\u7248\u672c\u4f7f\u7528object\uff0c\u65b0\u7248\u662fstr\nprint(colleges.describe(include=&#039;str&#039;).T)   # \u7c7b\u522b\u7c7b\u578b\uff0c\u5b57\u7b26\u4e32\u7c7b\u578b\n<\/code><\/pre>\n<h5>\u67e5\u770b\u6982\u51b5<\/h5>\n<p>\u901a\u8fc7<code>info()<\/code>\u65b9\u6cd5\u4e86\u89e3\u4e0d\u540c\u5b57\u6bb5\u7684\u6761\u76ee\u6570\u91cf\uff0c\u6570\u636e\u7c7b\u578b\uff0c\u662f\u5426\u7f3a\u5931\u53ca\u5185\u5b58\u5360\u7528\u60c5\u51b5<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\ncolleges = pd.read_csv(&#039;colleges.csv&#039;)\n\nprint(colleges.info())\n<\/code><\/pre>\n<h3>2.\u5e38\u7528\u6392\u5e8f\u65b9\u6cd5<\/h3>\n<h4>\u4ece\u6700\u5927\u7684N\u4e2a\u503c\u4e2d\u9009\u53d6\u6700\u5c0f\u503c-&gt;\u627e\u5230\u5c0f\u6210\u672c\u9ad8\u53e3\u7891\u7535\u5f71<\/h4>\n<p>\u6587\u4ef6\u5730\u5740\uff1a<a href=\"https:\/\/www.kaggle.com\/datasets\/carolzhangdc\/imdb-5000-movie-dataset?resource=download\">Kaggle\/IMDB 5000 Movie Dataset<\/a><\/p>\n<h5><code>nlargest()<\/code>\u65b9\u6cd5<\/h5>\n<p>\u7528<code>nlargest()<\/code>\u65b9\u6cd5\uff0c\u9009\u51fa<code>imbd_score<\/code>\u5206\u6570\u6700\u9ad8\u7684100\u4e2a<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;budget&#039;,&#039;imdb_score&#039;]]\nmovies2 = movies2.nlargest(100,&#039;imdb_score&#039;)\nprint(movies2)\n<\/code><\/pre>\n<h5><code>nsmallest()<\/code>\u65b9\u6cd5<\/h5>\n<p>\u4f7f\u7528nsmallest()\u65b9\u6cd5\u518d\u4ece\u4e2d\u6311\u51fa\u9884\u7b97\u6700\u5c0f\u76845\u90e8<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;budget&#039;,&#039;imdb_score&#039;]]\nmovies2 = movies2.nlargest(100,&#039;imdb_score&#039;)\nmovies2 = movies2.nsmallest(5,&#039;budget&#039;)\nprint(movies2)\n<\/code><\/pre>\n<p>\u7ed3\u679c<\/p>\n<pre><code class=\"language-python\">              movie_title    budget  imdb_score\n4924      Butterfly Girl\u00a0  180000.0         8.7\n4921  Children of Heaven\u00a0  180000.0         8.5\n4822        12 Angry Men\u00a0  350000.0         8.9\n4659        A Separation\u00a0  500000.0         8.4\n2242              Psycho\u00a0  806947.0         8.5\n<\/code><\/pre>\n<h4>\u901a\u8fc7\u6392\u5e8f\u9009\u53d6\u6bcf\u7ec4\u7684\u6700\u5927\u503c-&gt;\u627e\u5230\u6bcf\u5e74imdb\u8bc4\u5206\u6700\u9ad8\u7684\u7535\u5f71<\/h4>\n<h5>sort_values()\u65b9\u6cd5<\/h5>\n<p>sort_values()\u6309\u7167\u5e74\u6392\u5e8f\uff0cascending\u5347\u5e8f\u6392\u5217<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;title_year&#039;,&#039;imdb_score&#039;]]\nprint(movies2.sort_values(&#039;title_year&#039;,ascending=False))\n<\/code><\/pre>\n<h5>\u540c\u65f6\u5bf9<code>&#039;title_year&#039;,&#039;imdb_score&#039;<\/code>\u4e24\u5217\u8fdb\u884c\u6392\u5e8f<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;title_year&#039;,&#039;imdb_score&#039;]]\nmovies4 = movies2.sort_values([&#039;title_year&#039;,&#039;imdb_score&#039;],ascending=False)\nprint(movies4)\n<\/code><\/pre>\n<h5>\u7528<code>drop_duplicates<\/code>\u53bb\u91cd\uff0c\u53ea\u4fdd\u7559\u6bcf\u5e74\u7684\u7b2c\u4e00\u6761\u6570\u636e<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;title_year&#039;,&#039;imdb_score&#039;]]\nmovies3 = movies2.sort_values([&#039;title_year&#039;,&#039;imdb_score&#039;],ascending=False)\nmovies4 = movies3.drop_duplicates(&#039;title_year&#039;)\nprint(movies4)\n<\/code><\/pre>\n<p>drop_duplicates()\u5c5e\u6027<\/p>\n<ul>\n<li>keep=\u503c\n<ul>\n<li>first\uff1a\u9ed8\u8ba4\uff0c\u4fdd\u7559\u7b2c\u4e00\u4e2a<\/li>\n<li>last\uff1a\u4fdd\u7559\u6700\u540e\u4e00\u4e2a<\/li>\n<li>False: \u6709\u91cd\u590d\u7684\u4e00\u4e2a\u4e5f\u4e0d\u4fdd\u7559<\/li>\n<\/ul>\n<\/li>\n<li>ignore_index\uff1a\u9ed8\u8ba4False\uff0c\u4fdd\u7559\u539f\u59cb\u7684\u7d22\u5f15\uff0c\u8bbe\u7f6e\u4e3aTrue\u76f8\u5f53\u4e8e\u8c03\u7528reset_index()<\/li>\n<\/ul>\n<h5>\u8ba9<code>&#039;title_year&#039;<\/code>\u964d\u5e8f&#039;imdb_score&#039;\u5347\u5e8f<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies2 = movies[[&#039;movie_title&#039;,&#039;title_year&#039;,&#039;imdb_score&#039;]]\nmovies3 = movies2.sort_values([&#039;title_year&#039;,&#039;imdb_score&#039;],ascending=[False,True])\nprint(movies3)\n<\/code><\/pre>\n<p>\u901a\u8fc7<code>sort_values()<\/code>\u6392\u5e8f\u53ef\u4ee5\u7ed9ascending\u8d4b\u503c\u4e00\u4e2alist\uff0clist\u6bcf\u4e2aTrue False\u63a7\u5236\u5bf9\u5e94\u7684\u5217\u5347\u5e8f\u964d\u5e8f<\/p>\n<h4>\u63d0\u53d6\u51fa\u6bcf\u5e74\uff0c\u6bcf\u79cd\u7535\u5f71\u5206\u7ea7\u4e2d\u9884\u7b97\u5c11\u7684\u7535\u5f71-&gt;sort_values\u591a\u5217\u6392\u5e8f<\/h4>\n<p>\u591a\u5217\u6392\u5e8f\u65f6\uff0cascending\u53c2\u6570\u4f20\u5165\u4e00\u4e2a\u5217\u8868\uff0c\u5217\u8868\u4e00\u4e00\u5bf9\u5e94<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nmovies = pd.read_csv(&#039;movie_metadata.csv&#039;)\nprint(movies.columns)\nmovies = movies[[&#039;movie_title&#039;,&#039;title_year&#039;,&#039;content_rating&#039;,&#039;budget&#039;]]\n# \u63d0\u53d6\u51fa\u6bcf\u5e74\uff0c\u6bcf\u79cd\u7535\u5f71\u5206\u7ea7\u4e2d\u9884\u7b97\u5c11\u7684\u7535\u5f71-&gt;sort_values\u591a\u5217\u6392\u5e8f\nmovies1 = movies.sort_values([&#039;title_year&#039;,&#039;content_rating&#039;,&#039;budget&#039;],ascending=[False,False,True])\n# print(movies1.head(10))\n# \u53bb\u91cd\uff0c\u53bb\u91cdtitle_year\uff0ccontent_rating\u76f8\u540c\u7684\u6570\u636e\nmovies1.drop_duplicates(subset=[&#039;title_year&#039;,&#039;content_rating&#039;])\nprint(movies1.head(10))\n<\/code><\/pre>\n<h3>3.\u7b80\u5355\u6570\u636e\u5206\u6790\u7ec3\u4e60(\u79df\u623f\u6570\u636e)<\/h3>\n<h4>1.\u52a0\u8f7d\u6570\u636e\uff0c\u67e5\u770b\u6570\u636e\uff0c\u6570\u636e\u51c6\u5907<\/h4>\n<p>\u8f7d\u5165\u6570\u636e<\/p>\n<pre><code class=\"language-python\">import pandas as pd\nhouse = pd.read_csv(&#039;house.csv&#039;)\n<\/code><\/pre>\n<p>\u628a\u5217\u540d\u66ff\u6362\u6210\u82f1\u6587<\/p>\n<pre><code class=\"language-python\"># \u67e5\u770b\u539f\u59cb\u5217\u540d\nprint(house.columns)\n# \u5c06\u5217\u540d\u6362\u6210\u82f1\u6587\nhouse.columns = [&#039;region&#039;,&#039;address&#039;,&#039;title&#039;,&#039;unit_type&#039;,&#039;area&#039;,&#039;price&#039;,&#039;floor&#039;,&#039;construction_time&#039;,&#039;orientation&#039;,&#039;update_time&#039;,\n                &#039;number_of_property_viewers&#039;,&#039;remark&#039;,&#039;url&#039;]\n<\/code><\/pre>\n<p>\u67e5\u770b\u6570\u636e\u57fa\u672c\u60c5\u51b5<\/p>\n<pre><code class=\"language-python\">print(house.head())\nprint(house.info())\n<\/code><\/pre>\n<h4>2.\u627e\u5230\u79df\u91d1\u6700\u4f4e\u548c\u79df\u91d1\u6700\u9ad8\u7684\u623f\u5b50<\/h4>\n<h5>\u65b9\u6cd5\u4e00<\/h5>\n<p>\u5bf9\u4ef7\u683c\u8fdb\u884c\u6392\u5e8f\uff0c\u53d6\u7b2c\u4e00\u4e2a\/\u6700\u540e\u4e00\u4e2a,\u5c31\u662f\u79df\u91d1\u6700\u4f4e\u548c\u6700\u9ad8\u7684<\/p>\n<pre><code class=\"language-python\"># \u79df\u91d1\u6700\u4f4e\nhouse_price_min = house[&#039;price&#039;].sort_values().head(1)\nprint(f&#039;\u79df\u91d1\u6700\u4f4e\u7684\u623f\u5b50\uff1a{house_price_min}&#039;)\n\n# \u79df\u91d1\u6700\u9ad8\nhouse_price_max = house[&#039;price&#039;].sort_values().tail(1)\nprint(f&#039;\u79df\u91d1\u6700\u9ad8\u7684\u623f\u5b50\uff1a{house_price_max}&#039;)\n<\/code><\/pre>\n<h5>\u65b9\u6cd5\u4e8c<\/h5>\n<p>\u901a\u8fc7<code>describe()<\/code>\u65b9\u6cd5\u77e5\u9053\u6700\u4f4e\/\u6700\u9ad8\u7684\u4ef7\u683c<\/p>\n<pre><code class=\"language-python\"># \u79df\u91d1\u6700\u4f4e\nhouse_price_min = house[house[&#039;price&#039;] == 1500]\nprint(f&#039;\u79df\u91d1\u6700\u4f4e\u7684\u623f\u5b50\uff1a{house_price_min}&#039;)\n\n# \u79df\u91d1\u6700\u9ad8\nhouse_price_max = house[house[&#039;price&#039;] == 30000]\nprint(f&#039;\u79df\u91d1\u6700\u9ad8\u7684\u623f\u5b50\uff1a{house_price_max}&#039;)\n<\/code><\/pre>\n<p>\u6216\u8005\u6839\u636e<code>min()<\/code>\/<code>max()<\/code>\u83b7\u53d6\u6700\u5c0f\u503c\u548c\u6700\u5927\u503c<\/p>\n<pre><code class=\"language-python\"># \u79df\u91d1\u6700\u4f4e\n# house_price_min = house[house[&#039;price&#039;] == 1500]\n# house_price_min = house[house[&#039;price&#039;] == house[&#039;price&#039;].min()]\nhouse_price_min = house.loc[house[&#039;price&#039;] == house[&#039;price&#039;].min()]\nprint(f&#039;\u79df\u91d1\u6700\u4f4e\u7684\u623f\u5b50\uff1a{house_price_min}&#039;)\n\n# \u79df\u91d1\u6700\u9ad8\n# house_price_max = house[house[&#039;price&#039;] == 30000]\n# house_price_max = house[house[&#039;price&#039;] == house[&#039;price&#039;].max()]\nhouse_price_max = house.loc[house[&#039;price&#039;] == house[&#039;price&#039;].max()]\nprint(f&#039;\u79df\u91d1\u6700\u9ad8\u7684\u623f\u5b50\uff1a{house_price_max}&#039;)\n<\/code><\/pre>\n<p>\u5efa\u8bae\u4f7f\u7528<code>loc<\/code>\uff0c\u66f4\u52a0\u89c4\u8303<\/p>\n<h4>3.\u627e\u5230\u6700\u8fd1\u65b0\u4e0a\u768410\u5957\u623f\u6e90<\/h4>\n<p>\u627e\u5230\u6700\u8fd1\u65b0\u4e0a\u768410\u5957\u623f\u6e90<\/p>\n<pre><code class=\"language-python\"># \u627e\u5230\u6700\u8fd1\u65b0\u4e0a\u768410\u5957\u623f\u6e90\n# house = house[&#039;update_time&#039;].sort_values(ascending=False).head(10)\nhouse = house.sort_values(&#039;update_time&#039;,ascending=False).head(10)\nprint(house)\n<\/code><\/pre>\n<p>\u67e5\u770b\u6240\u6709\u66f4\u65b0\u65f6\u95f4<\/p>\n<pre><code class=\"language-python\"># \u67e5\u770b\u6240\u6709\u66f4\u65b0\u65f6\u95f4\nhouse2 = house[&#039;update_time&#039;].unique()  # \u7edf\u8ba1\u53bb\u91cd\u4e4b\u540e\u7684\u7ed3\u679c\n# house2 = house[&#039;update_time&#039;].nunique()     # \u7edf\u8ba1\u53bb\u91cd\u4e4b\u540e\u7684\u6570\u91cf\nprint(house2)\n<\/code><\/pre>\n<h4>4.\u770b\u623f\u4eba\u6570<\/h4>\n<pre><code class=\"language-python\"># \u5e73\u5747\u503c\nhouse_mean = house[&#039;number_of_property_viewers&#039;].mean()\nprint(f&#039;\u770b\u623f\u4eba\u6570\u5e73\u5747\u503c\uff1a{house_mean}&#039;)\n# \u4e2d\u4f4d\u6570\nhouse_median = house[&#039;number_of_property_viewers&#039;].median()\nprint(f&#039;\u770b\u623f\u4eba\u6570\u4e2d\u4f4d\u6570{house_median}&#039;)\n<\/code><\/pre>\n<p>\u4e0d\u540c\u770b\u623f\u4eba\u6570\u7684\u623f\u6e90\u6570\u91cf\uff0c<code>as_index=False<\/code>\u5206\u7ec4\u5b57\u6bb5\u4e0d\u4f5c\u4e3a\u884c\u7d22\u5f15(\u9ed8\u8ba4\u4e3aTrue)<\/p>\n<pre><code class=\"language-python\"># \u4e0d\u540c\u770b\u623f\u4eba\u6570\u7684\u623f\u6e90\u6570\u91cf\uff0cas_index=False\u5206\u7ec4\u5b57\u6bb5\u4e0d\u4f5c\u4e3a\u884c\u7d22\u5f15(\u9ed8\u8ba4\u4e3aTrue)\n# house3 = house.groupby(&#039;number_of_property_viewers&#039;)[&#039;title&#039;].count()   # \u7edf\u8ba1\u6bcf\u4e2a\u770b\u623f\u4eba\u6570\u5bf9\u5e94\u7684\u623f\u6e90\u6570\u91cf\nhouse3 = house.groupby(&#039;number_of_property_viewers&#039;,as_index=False)[&#039;title&#039;].count()\n# as_index\uff1a\u4f5c\u4e3a\u7d22\u5f15\nprint(house3)\n<\/code><\/pre>\n<p>\u753b\u56fe<\/p>\n<p>\u753b\u56fe<code>%matplotlib inline<\/code>\u529f\u80fd\u5c31\u662f\u5728jupyter notebook\u4e2d\u5185\u5d4c\u7ed8\u56fe\uff0c\u5e76\u53ef\u4ee5\u7701\u7565\u6389<code>plt.show<\/code><\/p>\n<pre><code class=\"language-python\"># \u753b\u56fe\nimport matplotlib.pyplot as plt\nhouse3.columns = [&#039;title&#039;,&#039;count&#039;]\ntmp_df = house3[&#039;count&#039;].plot(kind=&#039;bar&#039;,figsize=(20,10))\nplt.show()\n<\/code><\/pre>\n<h4>5.\u623f\u79df\u4ef7\u683c\u5206\u5e03<\/h4>\n<pre><code class=\"language-python\">print(house[&#039;price&#039;].describe())\nprint(house[&#039;price&#039;].mean())    # \u5e73\u5747\u503c\nprint(house[&#039;price&#039;].median())  # \u4e2d\u4f4d\u6570\nprint(house[&#039;price&#039;].min())     # \u6700\u5c0f\u503c\nprint(house[&#039;price&#039;].max())     # \u6700\u5927\u503c\nprint(house[&#039;price&#039;].std())     # \u6807\u51c6\u5dee\n<\/code><\/pre>\n<h4>6.\u770b\u623f\u4eba\u6570\u6700\u591a\u7684\u671d\u5411<\/h4>\n<pre><code class=\"language-python\"># \u8ba1\u7b97\u51fa\u6bcf\u4e2a\u671d\u5411\u770b\u623f\u7684\u4eba\u6570\nhouse4 = house.groupby(&#039;orientation&#039;,as_index=False)[&#039;number_of_property_viewers&#039;].sum()\n# \u627e\u51fa\u770b\u623f\u6700\u591a\u7684\u671d\u5411\nhouse4 = house4[house4[&#039;number_of_property_viewers&#039;] == house4[&#039;number_of_property_viewers&#039;].max()]\nprint(f&#039;\u770b\u623f\u6700\u591a\u7684\u671d\u5411\uff1a{house4}&#039;)\n<\/code><\/pre>\n<h4>7.\u623f\u578b\u5206\u5e03\u60c5\u51b5<\/h4>\n<pre><code class=\"language-python\">house5 = house.groupby(&#039;unit_type&#039;,as_index=False)[&#039;title&#039;].count()\nhouse5.columns = [&#039;unit_type&#039;,&#039;count&#039;]\nhouse5.set_index(&#039;unit_type&#039;,inplace=True)\nhouse5[&#039;count&#039;].plot(kind=&#039;bar&#039;,figsize=(20,10))\nplt.show()\n<\/code><\/pre>\n<blockquote>\n<p>\u5b57\u4f53\u663e\u793a\u62a5\u9519\u8bbe\u7f6e<\/p>\n<pre><code class=\"language-python\"># \u5b57\u4f53\u8bbe\u7f6e\nplt.rcParams[&#039;font.sans-serif&#039;] = [&#039;SimHei&#039;]\nplt.rcParams[&#039;axes.unicode_minus&#039;] = False\n<\/code><\/pre>\n<\/blockquote>\n<h4>8.\u6700\u53d7\u6b22\u8fce\u7684\u623f\u578b<\/h4>\n<pre><code class=\"language-python\">tmp = house.groupby(&#039;unit_type&#039;,as_index=False).agg({&#039;number_of_property_viewers&#039;:&#039;sum&#039;})\ntmp = tmp[tmp[&#039;number_of_property_viewers&#039;] == tmp[&#039;number_of_property_viewers&#039;].max()]\nprint(f&#039;\u6700\u53d7\u6b22\u8fce\u7684\u623f\u578b\uff1a{tmp}&#039;)\n<\/code><\/pre>\n<h4>9.\u623f\u5b50\u7684\u5e73\u5747\u79df\u623f\u4ef7\u683c(\u5143\/\u5e73\u7c73)<\/h4>\n<pre><code class=\"language-python\">house.loc[:,&#039;yuan_square_meter&#039;] = house[&#039;price&#039;]\/house[&#039;area&#039;]     # \u6dfb\u52a0\u4e00\u4e2a\u65b0\u5217\nyuan_square_meter = house[&#039;yuan_square_meter&#039;].mean()\nprint(f&#039;\u623f\u5b50\u7684\u5e73\u5747\u79df\u623f\u4ef7\u683c(\u5143\/\u5e73\u7c73)\uff1a{yuan_square_meter}&#039;)\n<\/code><\/pre>\n<h4>10.\u70ed\u95e8\u5c0f\u533a<\/h4>\n<pre><code class=\"language-python\"># \u5148\u53d6\u51fa[&#039;address&#039;,&#039;number_of_property_viewers&#039;]\u8fd9\u4e24\u5217\n# \u6309\u7167address\u8fdb\u884c\u5206\u7ec4\n# \u7136\u540e\u4f1a\u5c06number_of_property_viewers\u8fdb\u884c\u6c42\u548c\u7edf\u8ba1\npopular = house[[&#039;address&#039;,&#039;number_of_property_viewers&#039;]].groupby(by = [&#039;address&#039;], as_index = False).sum()\npopular.sort_values(&#039;number_of_property_viewers&#039; , ascending=False, inplace = True)     # \u6392\u5e8f\nprint(popular)\n<\/code><\/pre>\n<h4>11.\u51fa\u79df\u623f\u6e90\u6700\u591a\u7684\u5c0f\u533a<\/h4>\n<pre><code class=\"language-python\"># \u6309\u7167\u5c0f\u533a\u540d\u8fdb\u884c\u5206\u7ec4\uff0c\u7edf\u8ba1\u6bcf\u4e2a\u5c0f\u533a\u7684\u6570\u91cf\uff0c\u518d\u6309\u8fd9\u4e2a\u6570\u91cf\u627e\u5230\u623f\u6e90\u6700\u591a\u7684\u5c0f\u533a\nrent_out_the_most = house[[&#039;address&#039;,&#039;number_of_property_viewers&#039;]].groupby(&#039;address&#039;,as_index=False).count()\n# \u4fee\u6539\u5217\u540d\nrent_out_the_most.columns = [&#039;address&#039;,&#039;count&#039;]\nrent_out_the_most = rent_out_the_most.nlargest(10, &#039;count&#039;)\nprint(rent_out_the_most)\n<\/code><\/pre>\n<h2>\u516b\u3001\u6570\u636e\u7ec4\u5408<\/h2>\n<h3>1.\u8fde\u63a5\u6570\u636e<\/h3>\n<p>\u7ec4\u5408\u6570\u636e\u7684\u4e00\u79cd\u65b9\u5f0f\u662f\u4f7f\u7528\u201c\u8fde\u63a5\u201d<\/p>\n<ul>\n<li>\u8fde\u63a5\u662f\u628a\u67d0\u884c\u6216\u67d0\u5217\u8ffd\u52a0\u5230\u6570\u636e\u4e2d<\/li>\n<li>\u6570\u636e\u88ab\u5206\u6210\u4e86\u591a\u4efd\u53ef\u4ee5\u4f7f\u7528\u8fde\u63a5\u628a\u6570\u636e\u62fc\u63a5\u8d77\u6765<\/li>\n<li>\u628a\u8ba1\u7b97\u7684\u7ed3\u679c\u8ffd\u52a0\u5230\u73b0\u6709\u7684\u6570\u636e\u96c6\uff0c\u53ef\u4ee5\u4f7f\u7528\u8fde\u63a5<\/li>\n<\/ul>\n<h4>\u6dfb\u52a0\u884c<\/h4>\n<p>\u52a0\u8f7d\u591a\u4efd\u6570\u636e\uff0c\u5e76\u8fde\u63a5\u8d77\u6765<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\n# \u52a0\u8f7d\u6570\u636e\ndf1 = pd.read_csv(&#039;a_1.csv&#039;)\ndf2 = pd.read_csv(&#039;a_2.csv&#039;)\ndf3 = pd.read_csv(&#039;a_3.csv&#039;)\n\n# \u67e5\u770b\u4e09\u6761\u6570\u636e\nprint(df1)\nprint(df2)\nprint(df3)\n<\/code><\/pre>\n<p>\u7ed3\u679c<\/p>\n<blockquote>\n<pre><code class=\"language-python\">   A   B   C   D\n0  a1  b1  c1  d1\n1  a2  b2  c2  d2\n2  a3  b3  c3  d3\n3  a4  b4  c4  d4\n4  a5  b5  c5  d5\n     A    B    C    D\n0   a6   b6   c6   d6\n1   a7   b7   c7   d7\n2   a8   b8   c8   d8\n3   a9   b9   c9   d9\n4  a10  b10  c10  d10\n     A    B    C    D\n0  a11  b11  c11  d11\n1  a12  b12  c12  d12\n2  a13  b13  c13  d13\n3  a14  b14  c14  d14\n4  a15  b15  c15  d15\n<\/code><\/pre>\n<\/blockquote>\n<p>\u53ef\u4ee5\u4f7f\u7528concat\u51fd\u6570\u5c06\u4e0a\u97623\u4e2adataframe\u8fde\u63a5\u8d77\u6765\uff0c\u9700\u5c063\u4e2adataframe\u653e\u5230\u540c\u4e00\u4e2a\u5217\u8868\u4e2d<\/p>\n<pre><code class=\"language-python\"># \u62fc\u63a5\u6570\u636e\ndf = pd.concat([df1, df2, df3])     # \u5c06\u4e09\u4e2adataframe\u5806\u53e0\u8d77\u6765\u4e86\nprint(df)\n<\/code><\/pre>\n<blockquote>\n<p> <strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">     A    B    C    D\n0   a1   b1   c1   d1\n1   a2   b2   c2   d2\n2   a3   b3   c3   d3\n3   a4   b4   c4   d4\n4   a5   b5   c5   d5\n0   a6   b6   c6   d6\n1   a7   b7   c7   d7\n2   a8   b8   c8   d8\n3   a9   b9   c9   d9\n4  a10  b10  c10  d10\n0  a11  b11  c11  d11\n1  a12  b12  c12  d12\n2  a13  b13  c13  d13\n3  a14  b14  c14  d14\n4  a15  b15  c15  d15\n<\/code><\/pre>\n<\/blockquote>\n<p>\u4e0a\u9762\u7684\u7ed3\u679c\u4e2d\u53ef\u4ee5\u770b\u5230\uff0cconcat\u51fd\u6570\u628a\u4e09\u4e2adataframe\u8fde\u63a5\u5728\u4e86\u4e00\u8d77(\u7b80\u5355\u5806\u53e0)\uff0c\u4e4b\u540e\u53ef\u4ee5\u4f7f\u7528iloc\uff0cloc\u7b49\u65b9\u6cd5\u53d6\u51fa\u8fde\u63a5\u540e\u7684\u6570\u636e\u5b50\u96c6<\/p>\n<pre><code class=\"language-python\"># \u53d6\u51fa\u6570\u636e\nprint(df.iloc[0])   # \u53d6\u51fa\u7b2c0\u884c\nprint(df.loc[0])    # \u53d6\u51fa\u7d22\u5f15\u4e3a0\u7684\u6bcf\u4e00\u884c\n<\/code><\/pre>\n<h5>\u4f7f\u7528concat\u8fde\u63a5dataframe\u548cseries<\/h5>\n<pre><code class=\"language-python\"># \u4f7f\u7528concat\u8fde\u63a5dataframe\u548cseries\n# \u751f\u6210\u65b0\u7684series\nnew_series = pd.Series([&#039;n1&#039;,&#039;n2&#039;,&#039;n3&#039;,&#039;n4&#039;])\n# \u8fde\u63a5\ndf4 = pd.concat([df1,new_series])\nprint(df4)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">     A    B    C    D    0\n0   a1   b1   c1   d1  NaN\n1   a2   b2   c2   d2  NaN\n2   a3   b3   c3   d3  NaN\n3   a4   b4   c4   d4  NaN\n4   a5   b5   c5   d5  NaN\n0  NaN  NaN  NaN  NaN   n1\n1  NaN  NaN  NaN  NaN   n2\n2  NaN  NaN  NaN  NaN   n3\n3  NaN  NaN  NaN  NaN   n4\n<\/code><\/pre>\n<p>\u4e0a\u9762\u7684\u7ed3\u679c\u4e2d\u5305\u542b\u4e86NaN\u503c\uff0cNaN\u662fpython\u7528\u4e8e\u8868\u793a\u2018\u7f3a\u5931\u503c\u2019\u7684\u65b9\u6cd5\uff0c\u7531\u4e8eseries\u662f\u5217\u6570\u636e\uff0cconcat\u65b9\u6cd5\u9ed8\u8ba4\u662f\u6dfb\u52a0\u884c\uff0c\u7531\u4e8eseries\u6570\u636e\u6ca1\u6709\u7d22\u5f15\uff0c\u6240\u4ee5\u6dfb\u52a0\u4e86\u4e00\u4e2a\u65b0\u5217\uff0c\u7f3a\u5931\u7684\u90e8\u5206\u7528NaN\u586b\u5145<\/p>\n<\/blockquote>\n<p>\u5982\u679c\u60f3\u8981\u5c06[&#039;n1&#039;,&#039;n2&#039;,&#039;n3&#039;,&#039;n4&#039;]\u4f5c\u4e3a\u884c\u8fde\u63a5\u5230df1\u540e\uff0c\u53ef\u4ee5\u521b\u5efadataframe\u5e76\u6307\u5b9a\u5217\u540d<\/p>\n<pre><code class=\"language-python\"># \u751f\u6210\u65b0\u7684dataframe\nnew_dataframe = pd.DataFrame([[&#039;n1&#039;,&#039;n2&#039;,&#039;n3&#039;,&#039;n4&#039;]],columns=[&#039;A&#039;,&#039;B&#039;,&#039;C&#039;,&#039;D&#039;])\ndf5 = pd.concat([df1,new_dataframe])\nprint(df5)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A   B   C   D\n0  a1  b1  c1  d1\n1  a2  b2  c2  d2\n2  a3  b3  c3  d3\n3  a4  b4  c4  d4\n4  a5  b5  c5  d5\n0  n1  n2  n3  n4\n<\/code><\/pre>\n<\/blockquote>\n<h5>concat\u8fde\u63a5\u591a\u4e2a\u5bf9\u8c61<\/h5>\n<blockquote>\n<p><strong><font color='red'>\u6ce8:<\/font>append\u65b9\u6cd5\uff1aPandas 2.0\u53ca\u4ee5\u4e0a\u7248\u672c\u5df2\u5f03\u7528\uff0c\u540e\u7eed\u7248\u672c\u90fd\u4f7f\u7528concat\u65b9\u6cd5<\/strong><\/p>\n<\/blockquote>\n<p>concat\u53ef\u4ee5\u8fde\u63a5\u591a\u4e2a\u5bf9\u8c61\uff0c\u5982\u679c\u53ea\u9700\u8981\u5411\u73b0\u6709\u7684dataframe\u8ffd\u52a0\u4e00\u4e2a\u5bf9\u8c61\uff0c\u53ef\u4ee5\u901a\u8fc7append\u5b9e\u73b0<\/p>\n<pre><code class=\"language-python\">print(df1.append(df2))\t# \u5e9f\u5f03\nprint(pd.concat([df1, df2]))\n<\/code><\/pre>\n<h5>\u5ffd\u7565\u7d22\u5f15<\/h5>\n<p>\u5982\u679c\u662f\u4e24\u4e2a\u6216\u8005\u591a\u4e2adataframe\u8fde\u63a5\uff0c\u53ef\u4ee5\u901a\u8fc7<code>ignore_index=True<\/code>\u53c2\u6570\uff0c\u5ffd\u7565\u540e\u9762\u7684dataframe\u7684\u7d22\u5f15<\/p>\n<pre><code class=\"language-python\"># \u5ffd\u7565\u7d22\u5f15\nprint(pd.concat([df1, df2], ignore_index=True))\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">     A    B    C    D\n0   a1   b1   c1   d1\n1   a2   b2   c2   d2\n2   a3   b3   c3   d3\n3   a4   b4   c4   d4\n4   a5   b5   c5   d5\n5   a6   b6   c6   d6\n6   a7   b7   c7   d7\n7   a8   b8   c8   d8\n8   a9   b9   c9   d9\n9  a10  b10  c10  d10\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u5c06\u5b57\u5178\u8fde\u63a5dataframe<\/h5>\n<p>\u5411dataframe\u4e2d\u6dfb\u52a0\u4e00\u4e2a\u5b57\u5178\u7684\u65f6\u5019\uff0c<strong>\u5fc5\u987b\u5c06\u5b57\u5178\u8f6c\u6362\u4e3a\u5355\u884cdataframe<\/strong><\/p>\n<pre><code class=\"language-python\"># \u5c06\u5b57\u5178\u8fde\u63a5dataframe\ndata_dict = {&#039;A&#039;:&#039;n1&#039;,&#039;B&#039;:&#039;n2&#039;,&#039;C&#039;:&#039;n3&#039;,&#039;D&#039;:&#039;n4&#039;}\n# \u5c06\u5b57\u5178\u8f6c\u6362\u4e3a\u5355\u884cdataframe\ndata_dict = pd.DataFrame([data_dict])\ndf6 = pd.concat([df1,data_dict],ignore_index=True)\nprint(df6)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A   B   C   D\n0  a1  b1  c1  d1\n1  a2  b2  c2  d2\n2  a3  b3  c3  d3\n3  a4  b4  c4  d4\n4  a5  b5  c5  d5\n5  n1  n2  n3  n4\n<\/code><\/pre>\n<\/blockquote>\n<h4>\u6dfb\u52a0\u5217<\/h4>\n<p>\u4f7f\u7528concat\u51fd\u6570\u6dfb\u52a0\u5217\uff0c\u4e0e\u6dfb\u52a0\u884c\u7684\u65b9\u6cd5\u7c7b\u4f3c\uff0c\u9700\u8981\u591a\u4f20\u4e00\u4e2aaxis\u53c2\u6570axis\u7684\u9ed8\u8ba4\u503c\u662findex\u884c\u6dfb\u52a0\uff0c\u4f20\u5165\u53c2\u6570<code>axis=\u201ccolumns\u201d<\/code>\u5373\u53ef\u6309\u5217\u6dfb\u52a0<\/p>\n<p>axis\u53c2\u6570<\/p>\n<ul>\n<li>0\/index<\/li>\n<li>1\/columns<\/li>\n<\/ul>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf1 = pd.read_csv(&#039;a_1.csv&#039;)\ndf2 = pd.read_csv(&#039;a_2.csv&#039;)\ndf3 = pd.read_csv(&#039;a_3.csv&#039;)\n\n# \u5408\u5e76\u5217\ndf = pd.concat([df1,df2,df3],axis=1)\nprint(df)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A   B   C   D    A    B    C    D    A    B    C    D\n0  a1  b1  c1  d1   a6   b6   c6   d6  a11  b11  c11  d11\n1  a2  b2  c2  d2   a7   b7   c7   d7  a12  b12  c12  d12\n2  a3  b3  c3  d3   a8   b8   c8   d8  a13  b13  c13  d13\n3  a4  b4  c4  d4   a9   b9   c9   d9  a14  b14  c14  d14\n4  a5  b5  c5  d5  a10  b10  c10  d10  a15  b15  c15  d15\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u901a\u8fc7\u5217\u540d\u83b7\u53d6\u5b50\u96c6<\/h5>\n<pre><code class=\"language-python\">print(df[&#039;A&#039;])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A    A    A\n0  a1   a6  a11\n1  a2   a7  a12\n2  a3   a8  a13\n3  a4   a9  a14\n4  a5  a10  a15\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u6dfb\u52a0\u5217<\/h5>\n<p>\u5411dataframe\u6dfb\u52a0\u4e00\u5217\uff0c\u4e0d\u9700\u8981\u8c03\u7528\u51fd\u6570\uff0c\u901a\u8fc7<code>dataframe[&#039;\u5217\u540d&#039;]=[\u503c]<\/code>\u5373\u53ef<\/p>\n<pre><code class=\"language-python\"># \u5411dataframe\u6dfb\u52a0\u4e00\u5217\ndf[&#039;new_col&#039;] = [&#039;n1&#039;,&#039;n2&#039;,&#039;n3&#039;,&#039;n4&#039;,&#039;n5&#039;]\n# \u6dfb\u52a0Series\ndf[&#039;new_col2&#039;] = pd.Series([&#039;n1&#039;,&#039;n2&#039;,&#039;n3&#039;,&#039;n4&#039;,&#039;n5&#039;])\nprint(df)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A   B   C   D    A    B    C    D    A    B    C    D new_col new_col2\n0  a1  b1  c1  d1   a6   b6   c6   d6  a11  b11  c11  d11      n1       n1\n1  a2  b2  c2  d2   a7   b7   c7   d7  a12  b12  c12  d12      n2       n2\n2  a3  b3  c3  d3   a8   b8   c8   d8  a13  b13  c13  d13      n3       n3\n3  a4  b4  c4  d4   a9   b9   c9   d9  a14  b14  c14  d14      n4       n4\n4  a5  b5  c5  d5  a10  b10  c10  d10  a15  b15  c15  d15      n5       n5\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u5408\u5e76\u540e\u53ef\u4ee5\u91cd\u7f6e\u7d22\u5f15<\/h5>\n<pre><code class=\"language-python\"># \u5408\u5e76\u540e\u53ef\u4ee5\u91cd\u7f6e\u7d22\u5f15\ndf_2 = pd.concat([df1,df2,df3],axis=&quot;columns&quot;,ignore_index=True)\nprint(df_2)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   0   1   2   3    4    5    6    7    8    9    10   11\n0  a1  b1  c1  d1   a6   b6   c6   d6  a11  b11  c11  d11\n1  a2  b2  c2  d2   a7   b7   c7   d7  a12  b12  c12  d12\n2  a3  b3  c3  d3   a8   b8   c8   d8  a13  b13  c13  d13\n3  a4  b4  c4  d4   a9   b9   c9   d9  a14  b14  c14  d14\n4  a5  b5  c5  d5  a10  b10  c10  d10  a15  b15  c15  d15\n<\/code><\/pre>\n<\/blockquote>\n<h4>concat\u8fde\u63a5\u5177\u6709\u4e0d\u540c\u884c\u5217\u7d22\u5f15\u7684\u6570\u636e<\/h4>\n<h5>\u4e0d\u540c\u5217\u7d22\u5f15<\/h5>\n<p>\u5c06\u4e0a\u9762\u4f8b\u5b50\u4e2d\u7684\u6570\u636e\u96c6\u505a\u8c03\u6574\uff0c\u4fee\u6539\u5217\u540d<\/p>\n<pre><code class=\"language-python\"># \u4fee\u6539\u5217\u540d\ndf1.columns = [&#039;A&#039;,&#039;B&#039;,&#039;C&#039;,&#039;D&#039;]\ndf2.columns = [&#039;E&#039;,&#039;F&#039;,&#039;G&#039;,&#039;H&#039;]\ndf3.columns = [&#039;A&#039;,&#039;C&#039;,&#039;F&#039;,&#039;H&#039;]\n<\/code><\/pre>\n<p>\u4f7f\u7528concat\u76f4\u63a5\u8fde\u63a5\uff0c\u6570\u636e\u4f1a\u5806\u53e0\u5728\u4e00\u8d77\uff0c\u5217\u540d\u76f8\u540c\u7684\u6570\u636e\u4f1a\u5408\u5e76\u5230\u4e00\u5217\uff0c\u5408\u5e76\u540e\u4e0d\u5b58\u5728\u7684\u6570\u636e\u4f1a\u7528NaN\u586b\u5145<\/p>\n<pre><code class=\"language-python\"># \u5408\u5e76\u6570\u636e\ndf_3 = pd.concat([df1,df2,df3])\nprint(df_3)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">     A    B    C    D    E    F    G    H\n0   a1   b1   c1   d1  NaN  NaN  NaN  NaN\n1   a2   b2   c2   d2  NaN  NaN  NaN  NaN\n2   a3   b3   c3   d3  NaN  NaN  NaN  NaN\n3   a4   b4   c4   d4  NaN  NaN  NaN  NaN\n4   a5   b5   c5   d5  NaN  NaN  NaN  NaN\n0  NaN  NaN  NaN  NaN   a6   b6   c6   d6\n1  NaN  NaN  NaN  NaN   a7   b7   c7   d7\n2  NaN  NaN  NaN  NaN   a8   b8   c8   d8\n3  NaN  NaN  NaN  NaN   a9   b9   c9   d9\n4  NaN  NaN  NaN  NaN  a10  b10  c10  d10\n0  a11  NaN  b11  NaN  NaN  c11  NaN  d11\n1  a12  NaN  b12  NaN  NaN  c12  NaN  d12\n2  a13  NaN  b13  NaN  NaN  c13  NaN  d13\n3  a14  NaN  b14  NaN  NaN  c14  NaN  d14\n4  a15  NaN  b15  NaN  NaN  c15  NaN  d15\n<\/code><\/pre>\n<\/blockquote>\n<p>\u5982\u679c\u5728\u8fde\u63a5\u7684\u65f6\u5019\u6307\u5411\u4fdd\u7559\u6240\u6709\u6570\u636e\u96c6\u4e2d\u90fd\u6709\u7684\u6570\u636e\uff0c\u53ef\u4ee5\u6570\u636ejoin\u53c2\u6570\uff0c\u9ed8\u8ba4\u662f\u2018outer\u2019\u6240\u6709\u6570\u636e\uff0c\u5982\u679c\u8bbe\u7f6e\u4e3a\u2018inner\u2019\u53ea\u4fdd\u7559\u6570\u636e\u4e2d\u5171\u6709\u7684\u90e8\u5206<\/p>\n<pre><code class=\"language-python\"># join \u9700\u5217\u540d\u4e00\u81f4\ndf_4 = pd.concat([df1,df2,df3],join=&#039;inner&#039;)\nprint(df_4)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Empty DataFrame\nColumns: []\nIndex: [0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 0, 1, 2, 3, 4]\n<\/code><\/pre>\n<\/blockquote>\n<h5>join\u53c2\u6570<\/h5>\n<ul>\n<li>outer\uff1a\u628adf\u4e2d\u7684\u6570\u636e\u90fd\u653e\u5230\u5408\u5e76\u7684\u7ed3\u679c\u4e2d<\/li>\n<li>inner\uff1a\u5fc5\u987b\u5728\u4e24\u4e2a\u8868\u4e2d\u90fd\u5b58\u5728\u7684\u884c\/\u5217\u624d\u4f1a\u88ab\u5408\u5e76\u5230\u7ed3\u679c\u4e2d<\/li>\n<\/ul>\n<h5>\u4e0d\u540c\u884c\u7d22\u5f15<\/h5>\n<p>\u8fde\u63a5\u5177\u6709\u4e0d\u540c\u884c\u7d22\u5f15\u7684\u6570\u636e<\/p>\n<pre><code class=\"language-python\"># \u4fee\u6539\u884c\u7d22\u5f15\ndf1.index = [0,1,2,3,4]\ndf2.index = [4,5,6,7,8]\ndf3.index = [0,2,5,7,9]\n<\/code><\/pre>\n<p>\u4f20\u5165axis=\u2018columns\u2019\uff0c\u8fde\u63a5\u540e\u7684dataframe\u6309\u5217\u6dfb\u52a0\uff0c\u5e76\u5339\u914d\u5404\u81ea\u884c\u7d22\u5f15\uff0c\u7f3a\u5931\u503c\u7528NaN<\/p>\n<pre><code class=\"language-python\"># \u5408\u5e76\u6570\u636e\ndf_5 = pd.concat([df1,df2,df3],axis=&#039;columns&#039;)\nprint(df_5)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">     A    B    C    D    E    F    G    H    A    C    F    H\n0   a1   b1   c1   d1  NaN  NaN  NaN  NaN  a11  b11  c11  d11\n1   a2   b2   c2   d2  NaN  NaN  NaN  NaN  NaN  NaN  NaN  NaN\n2   a3   b3   c3   d3  NaN  NaN  NaN  NaN  a12  b12  c12  d12\n3   a4   b4   c4   d4  NaN  NaN  NaN  NaN  NaN  NaN  NaN  NaN\n4   a5   b5   c5   d5   a6   b6   c6   d6  NaN  NaN  NaN  NaN\n5  NaN  NaN  NaN  NaN   a7   b7   c7   d7  a13  b13  c13  d13\n6  NaN  NaN  NaN  NaN   a8   b8   c8   d8  NaN  NaN  NaN  NaN\n7  NaN  NaN  NaN  NaN   a9   b9   c9   d9  a14  b14  c14  d14\n8  NaN  NaN  NaN  NaN  a10  b10  c10  d10  NaN  NaN  NaN  NaN\n9  NaN  NaN  NaN  NaN  NaN  NaN  NaN  NaN  a15  b15  c15  d15\n<\/code><\/pre>\n<\/blockquote>\n<p>join<\/p>\n<pre><code class=\"language-python\"># join\ndf_6 = pd.concat([df1,df3],axis=&#039;columns&#039;,join=&#039;inner&#039;)\nprint(df_6)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">    A   B   C   D    A    C    F    H\n0  a1  b1  c1  d1  a11  b11  c11  d11\n2  a3  b3  c3  d3  a12  b12  c12  d12\n<\/code><\/pre>\n<\/blockquote>\n<h3>2.\u5408\u5e76\u591a\u4e2a\u6570\u636e\u96c6<\/h3>\n<p>\u5728\u4f7f\u7528<code>concat<\/code>\u8fde\u63a5\u6570\u636e\u65f6\uff0c\u6d89\u53ca\u5230\u4e86\u53c2\u6570<code>join<\/code>(<code>join=&#039;inner&#039;,join=&#039;outer&#039;<\/code>)<\/p>\n<p>\u6570\u636e\u5e93\u4e2d\u53ef\u4ee5\u4f9d\u636e\u5171\u6709\u6570\u636e\u628a\u4e24\u4e2a\u6216\u8005\u591a\u4e2a\u6570\u636e\u8868\u7ec4\u5408\u8d77\u6765\uff0c\u5373<code>join<\/code>\u64cd\u4f5c<\/p>\n<p>dataframe\u4e5f\u53ef\u4ee5\u5b9e\u73b0\u7c7b\u4f3c\u6570\u636e\u5e93\u7684<code>join<\/code>\u64cd\u4f5c<\/p>\n<p>pandas\u53ef\u4ee5\u901a\u8fc7<code>pd.join<\/code>\u547d\u4ee4\u7ec4\u5408\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7<code>pd.merge<\/code>\u547d\u4ee4\u7ec4\u5408\u6570\u636e<\/p>\n<ul>\n<li><code>merge<\/code>\u66f4\u7075\u6d3b<\/li>\n<li>\u5982\u679c\u60f3\u4f9d\u636e\u884c\u7d22\u5f15\u6765\u5408\u5e76dataframe\u53ef\u4ee5\u8003\u8651\u4f7f\u7528<code>join<\/code>\u51fd\u6570<\/li>\n<\/ul>\n<h4>\u52a0\u8f7d\u6570\u636e<\/h4>\n<p>\u5b89\u88c5<code>sqlalchemy<\/code>\u5e93<\/p>\n<pre><code class=\"language-shell\">pip install sqlalchemy\n<\/code><\/pre>\n<p><code>read_sql_table<\/code>\u51fd\u6570\u53ef\u4ee5\u4ece\u6570\u636e\u5e93\u4e2d\u8bfb\u53d6\u8868<\/p>\n<pre><code class=\"language-python\">import pandas as pd\nfrom sqlalchemy import create_engine\n\n# \u8fde\u63a5\u6570\u636e\u5e93\nengine = create_engine(&#039;mysql+pymysql:\/\/root:huihuia24@127.0.0.1:3306\/databases_demo?charset=utf8mb4&#039;)\n\n# \u8bfb\u53d6\u6570\u636e\ndf1 = pd.read_sql_table(&#039;auth_permission&#039;,engine,index_col=&#039;id&#039;)\ndf2 = pd.read_sql_table(&#039;django_content_type&#039;,engine,index_col=&#039;id&#039;)\n\nprint(df1)\nprint(df2)\n<\/code><\/pre>\n<h4>\u4e00\u5bf9\u4e00\u5408\u5e76<\/h4>\n<p>\u6700\u7b80\u5355\u7684\u5408\u5e76\u53ea\u6d89\u53ca\u4e24\u4e2adataframe\u4e00\u4e00\u628a\u4e00\u5217\u4e0e\u53e6\u4e00\u5217\u8fde\u63a5\uff0c\u4e14\u8981\u8fde\u63a5\u7684\u5217\u4e0d\u542b\u4efb\u4f55\u91cd\u590d\u7684\u503c<\/p>\n<p>\u5148\u4ece\u6570\u636e\u8868\u4e2d\u63d0\u53d6\u90e8\u5206\u6570\u636e\uff0c\u4f7f\u5176\u4e0d\u542b\u91cd\u590d\u7684\u503c<\/p>\n<pre><code class=\"language-python\"># \u53d6\u503c\nauth_permission = df1.loc[[1,5,9,13,17,22,25,30,35,40]]\nprint(auth_permission)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">                    name  content_type_id         codename\nid                                                        \n1      Can add log entry                1     add_logentry\n5     Can add permission                3   add_permission\n9          Can add group                2        add_group\n13          Can add user                4         add_user\n17  Can add content type                5  add_contenttype\n22    Can change session                6   change_session\n25          Can add book                7         add_book\n30       Can change user                9      change_user\n35    Can delete article                8   delete_article\n40      Can view comment               10     view_comment\n<\/code><\/pre>\n<\/blockquote>\n<p>\u901a\u8fc7<code>content_type_id<\/code>\u5217\u5408\u5e76\u6570\u636e\uff0chow\u53c2\u6570\u6307\u5b9a\u8fde\u63a5\u65b9\u5f0f<\/p>\n<ul>\n<li><code>how=&#039;left&#039;<\/code>\u5bf9\u5e94SQL\u4e2d\u7684<code>left outer<\/code>\u4fdd\u7559\u5de6\u4fa7\u8868\u4e2d\u7684\u6240\u6709key<\/li>\n<li><code>how=&#039;right&#039;<\/code>\u5bf9\u5e94SQL\u4e2d\u7684<code>right outer<\/code>\u4fdd\u7559\u53f3\u4fa7\u8868\u4e2d\u7684\u6240\u6709key<\/li>\n<li><code>how=&#039;outer&#039;<\/code>\u5bf9\u5e94SQL\u4e2d\u7684<code>full outer<\/code>\u4fdd\u7559\u5de6\u53f3\u4e24\u4fa7\u8868\u4e2d\u7684\u6240\u6709key<\/li>\n<li><code>how=&#039;inner&#039;<\/code>\u5bf9\u5e94SQL\u4e2d\u7684<code>inner<\/code>\u53ea\u4fdd\u7559\u5de6\u53f3\u4e24\u4fa7\u8868\u4e2d\u7684\u90fd\u6709key<\/li>\n<\/ul>\n<blockquote>\n<p><font color='red'><strong>\u6ce8\uff1a<\/strong><\/font><br \/><code>pd.merge<\/code>\u9700\u8981\u4f20\u4e24\u4e2a\u8868<\/p>\n<p><code>df.merge<\/code>\u65f6df\u672c\u8eab\u5c31\u662f\u5de6\u8868\uff0c\u6240\u4ee5\u53ea\u8981\u4f20\u53f3\u8868<\/p>\n<\/blockquote>\n<h5>\u5de6\u8fde\u63a5<\/h5>\n<pre><code class=\"language-python\"># \u5de6\u8fde\u63a5\ndf_1 = df2.merge(auth_permission[[&#039;name&#039;,&#039;content_type_id&#039;,&#039;codename&#039;]],left_on=&#039;id&#039;,right_on=&#039;content_type_id&#039;,how=&#039;left&#039;)\nprint(df_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   id     app_label        model                  name  content_type_id         codename\n0   1         admin     logentry     Can add log entry                1     add_logentry\n1   8       article      article    Can delete article                8   delete_article\n2  10       article      comment      Can view comment               10     view_comment\n3   9       article         user       Can change user                9      change_user\n4   2          auth        group         Can add group                2        add_group\n5   3          auth   permission    Can add permission                3   add_permission\n6   4          auth         user          Can add user                4         add_user\n7   7          book         book          Can add book                7         add_book\n8   5  contenttypes  contenttype  Can add content type                5  add_contenttype\n9   6      sessions      session    Can change session                6   change_session\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u53f3\u8fde\u63a5<\/h5>\n<pre><code class=\"language-python\"># \u53f3\u8fde\u63a5\ndf_2 = df2.merge(auth_permission[[&#039;name&#039;,&#039;content_type_id&#039;,&#039;codename&#039;]],left_on=&#039;id&#039;,right_on=&#039;content_type_id&#039;,how=&#039;right&#039;)\nprint(df_2)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   id     app_label        model                  name  content_type_id         codename\n0   1         admin     logentry     Can add log entry                1     add_logentry\n1   3          auth   permission    Can add permission                3   add_permission\n2   2          auth        group         Can add group                2        add_group\n3   4          auth         user          Can add user                4         add_user\n4   5  contenttypes  contenttype  Can add content type                5  add_contenttype\n5   6      sessions      session    Can change session                6   change_session\n6   7          book         book          Can add book                7         add_book\n7   9       article         user       Can change user                9      change_user\n8   8       article      article    Can delete article                8   delete_article\n9  10       article      comment      Can view comment               10     view_comment\n<\/code><\/pre>\n<\/blockquote>\n<h4>\u591a\u5bf9\u4e00\u5408\u5e76<\/h4>\n<pre><code class=\"language-python\"># \u591a\u5bf9\u4e00\u5408\u5e76\ndf_all = music.merge(music_type,left_on=&#039;type_id&#039;,right_on=&#039;id&#039;,how=&#039;left&#039;)\ndf_all = df_all[[&#039;song_name&#039;,&#039;singer&#039;,&#039;album&#039;,&#039;duration_ms&#039;,&#039;release_date&#039;,&#039;type_name&#039;]]\nprint(df_all.to_string())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">             song_name         singer          album  duration_ms release_date type_name\n0                 \u665a\u98ce\u544a\u767d            \u5c0f\u963f\u4e03           \u665a\u98ce\u544a\u767d       218000   2023-05-12        \u6d41\u884c\n1                   \u5c71\u6d77         \u8349\u4e1c\u6ca1\u6709\u6d3e\u5bf9             \u5982\u5e38       267000   2020-07-25        \u6447\u6eda\n2                   \u6210\u90fd             \u8d75\u96f7           \u65e0\u6cd5\u957f\u5927       328000   2016-12-21        \u6c11\u8c23\n3                \u6708\u5149\u594f\u9e23\u66f2            \u8d1d\u591a\u82ac           \u53e4\u5178\u7cbe\u9009       289000   1801-03-15        \u53e4\u5178\n4   Fly Me to the Moon  Frank Sinatra           \u7235\u58eb\u7ecf\u5178       234000   1964-08-01        \u7235\u58eb\n5                 \u98d8\u5411\u5317\u65b9        \u859b\u4e4b\u8c26\/\u9093\u7d2b\u68cb              \u6e21       298000   2017-11-02        \u563b\u54c8\n6                   \u82b1\u6d77            \u5468\u6770\u4f26            \u9b54\u6770\u5ea7       256000   2008-10-15       R&amp;B\n7                Faded    Alan Walker          Faded       212000   2015-12-04        \u7535\u5b50\n8         Take Me Home    John Denver  Country Roads       245000   1971-04-12        \u4e61\u6751\n9        Enter Sandman      Metallica      Metallica       238000   1991-08-12        \u91d1\u5c5e\n10              \u83ca\u6b21\u90ce\u7684\u590f\u5929            \u4e45\u77f3\u8ba9         \u83ca\u6b21\u90ce\u7684\u590f\u5929       189000   1999-05-26       \u8f7b\u97f3\u4e50\n11                 \u7275\u4e1d\u620f       \u94f6\u4e34\/Aki\u963f\u6770           \u8150\u8349\u4e3a\u8424       242000   2013-12-01        \u53e4\u98ce\n12             At Last     Etta James     Etta James       225000   1960-11-01        \u84dd\u8c03\n13                \u52a0\u5dde\u65c5\u9986           \u8001\u9e70\u4e50\u961f           \u52a0\u5dde\u65c5\u9986       386000   1976-12-08        \u670b\u514b\n14             \u91ce\u72fcDisco          \u5b9d\u77f3Gem        \u91ce\u72fcDisco       220000   2019-09-02        \u8bf4\u5531\n15                \u5b57\u5b57\u53e5\u53e5            \u5f20\u78a7\u6668           \u5b57\u5b57\u53e5\u53e5       248000   2022-07-18        \u6d41\u884c\n16                  \u7406\u60f3             \u8d75\u96f7           \u5409\u59c6\u9910\u5385       312000   2014-10-19        \u6c11\u8c23\n17                  \u5361\u519c           \u5e15\u8d6b\u8d1d\u5c14           \u53e4\u5178\u5408\u96c6       265000   1680-01-01        \u53e4\u5178\n18                 \u9752\u82b1\u74f7            \u5468\u6770\u4f26            \u6211\u5f88\u5fd9       259000   2007-11-02        \u6d41\u884c\n19                \u5149\u5e74\u4e4b\u5916            \u9093\u7d2b\u68cb           \u5149\u5e74\u4e4b\u5916       231000   2016-12-30       R&amp;B\n20          Wake Me Up         Avicii           True       247000   2013-06-17        \u7535\u5b50\n21                 \u5357\u5c71\u5357             \u9a6c\u9814             \u5b64\u5c9b       287000   2014-09-26        \u6c11\u8c23\n22                  \u6674\u5929            \u5468\u6770\u4f26            \u53f6\u60e0\u7f8e       262000   2003-07-31        \u6d41\u884c\n23                \u6d77\u9614\u5929\u7a7a         Beyond            \u4e50\u4e0e\u6012       334000   1993-05-14        \u6447\u6eda\n24               \u68a6\u4e2d\u7684\u5a5a\u793c       \u7406\u67e5\u5fb7\u00b7\u514b\u83b1\u5fb7\u66fc           \u94a2\u7434\u7cbe\u9009       215000   1979-01-01        \u53e4\u5178\n25                 \u6c34\u661f\u8bb0             \u90ed\u9876       \u98de\u884c\u5668\u7684\u6267\u884c\u5468\u671f       296000   2016-11-25        \u6d41\u884c\n26                  \u7a3b\u9999            \u5468\u6770\u4f26            \u9b54\u6770\u5ea7       243000   2008-10-15        \u6d41\u884c\n27                  \u9f13\u697c             \u8d75\u96f7           \u65e0\u6cd5\u957f\u5927       305000   2016-12-21        \u6c11\u8c23\n28                 \u8d77\u98ce\u4e86         \u4e70\u8fa3\u6912\u4e5f\u7528\u5238            \u8d77\u98ce\u4e86       278000   2017-02-12        \u6d41\u884c\n29                \u6625\u98ce\u5341\u91cc          \u9e7f\u5148\u68ee\u4e50\u961f           \u6240\u6709\u7684\u9152       290000   2016-11-09        \u6c11\u8c23\n30                \u544a\u767d\u6c14\u7403            \u5468\u6770\u4f26           \u5e8a\u8fb9\u6545\u4e8b       237000   2016-06-24        \u6d41\u884c\n31                 \u4e03\u91cc\u9999            \u5468\u6770\u4f26            \u4e03\u91cc\u9999       254000   2004-08-03        \u6d41\u884c\n32                 \u5c0f\u5e78\u8fd0            \u7530\u99a5\u7504         \u6211\u7684\u5c11\u5973\u65f6\u4ee3       249000   2015-10-21        \u6d41\u884c\n33                \u5e73\u51e1\u4e4b\u8def             \u6734\u6811           \u730e\u6237\u661f\u5ea7       275000   2014-07-16        \u6c11\u8c23\n34                \u5f80\u540e\u4f59\u751f             \u9a6c\u826f           \u5f80\u540e\u4f59\u751f       233000   2018-05-16        \u6c11\u8c23\n35                \u7eb8\u77ed\u60c5\u957f          \u70df\u628a\u513f\u4e50\u961f           \u7eb8\u77ed\u60c5\u957f       217000   2018-03-05        \u6c11\u8c23\n36                  \u75c5\u53d8     Cubi\/Fi9\u6c5f\u6f88             \u75c5\u53d8       226000   2017-06-23        \u563b\u54c8\n37               \u5168\u90e8\u90fd\u662f\u4f60     Dragon Pig          \u5168\u90e8\u90fd\u662f\u4f60       208000   2017-03-16        \u563b\u54c8\n38                 \u5b66\u4e0d\u4f1a            \u6797\u4fca\u6770            \u5b66\u4e0d\u4f1a       268000   2011-12-31        \u6d41\u884c\n39                  \u6c5f\u5357            \u6797\u4fca\u6770           \u7b2c\u4e8c\u5929\u5802       251000   2004-06-04        \u6d41\u884c\n40                  \u6f14\u5458            \u859b\u4e4b\u8c26             \u7ec5\u58eb       246000   2015-05-20        \u6d41\u884c\n41                \u8ba4\u771f\u7684\u96ea            \u859b\u4e4b\u8c26            \u859b\u4e4b\u8c26       253000   2006-06-09        \u6d41\u884c\n42                \u5929\u5916\u6765\u7269            \u859b\u4e4b\u8c26           \u5929\u5916\u6765\u7269       261000   2020-12-31        \u6d41\u884c\n43                  \u5927\u9c7c             \u5468\u6df1           \u5927\u9c7c\u6d77\u68e0       272000   2016-05-20        \u53e4\u98ce\n44                  \u4e0d\u67d3            \u6bdb\u4e0d\u6613        \u9999\u871c\u6c89\u6c89\u70ec\u5982\u971c       269000   2018-08-13        \u6d41\u884c\n45                  \u6d88\u6101            \u6bdb\u4e0d\u6613          \u5e73\u51e1\u7684\u4e00\u5929       292000   2017-09-01        \u6c11\u8c23\n46                 \u5c0f\u9152\u9986             \u9648\u7c92             \u5982\u4e5f       229000   2016-07-26        \u6c11\u8c23\n47                 \u8ffd\u5149\u8005            \u5c91\u5b81\u513f           \u590f\u81f3\u672a\u81f3       235000   2017-06-16        \u6d41\u884c\n48                \u661f\u8fb0\u5927\u6d77            \u9ec4\u9704\u96f2           \u661f\u8fb0\u5927\u6d77       216000   2021-01-15        \u6d41\u884c\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u8ba1\u7b97\u6bcf\u79cd\u7c7b\u578b\u97f3\u4e50\u7684\u5e73\u5747\u65f6\u957f<\/h5>\n<ul>\n<li><code>to_timedelta<\/code>\u5c06<code>duration_ms<\/code>\u5217\u8f6c\u53d8\u4e3a<code>timedelta<\/code>\u6570\u636e\u7c7b\u578b<\/li>\n<li>\u53c2\u6570<code>unit=&#039;ms&#039;<\/code>\u65f6\u95f4\u5355\u4f4d<\/li>\n<li><code>dt.floor(&#039;s&#039;) dt.floor()<\/code>\u65f6\u95f4\u7c7b\u578b\u6570\u636e\uff0c\u6309\u6307\u5b9a\u5355\u4f4d\u622a\u65ad\u6570\u636e<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># \u8ba1\u7b97\u6bcf\u79cd\u7c7b\u578b\u97f3\u4e50\u7684\u5e73\u5747\u65f6\u957f\n# \u5206\u7ec4\ndf_1 = df_all.groupby(&#039;type_name&#039;)[&#039;duration_ms&#039;].mean()\nprint(df_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">type_name\nR&amp;B    243500.000000\n\u4e61\u6751     245000.000000\n\u53e4\u5178     256333.333333\n\u53e4\u98ce     257000.000000\n\u563b\u54c8     244000.000000\n\u6447\u6eda     300500.000000\n\u670b\u514b     386000.000000\n\u6c11\u8c23     276800.000000\n\u6d41\u884c     252388.888889\n\u7235\u58eb     234000.000000\n\u7535\u5b50     229500.000000\n\u84dd\u8c03     225000.000000\n\u8bf4\u5531     220000.000000\n\u8f7b\u97f3\u4e50    189000.000000\n\u91d1\u5c5e     238000.000000\nName: duration_ms, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u8f6c\u6362\u6210\u65f6\u95f4\ndf_1 = pd.to_timedelta(df_1,unit=&#039;ms&#039;).dt.floor(&#039;s&#039;).sort_values()\nprint(df_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">type_name\n\u8f7b\u97f3\u4e50   0 days 00:03:09\n\u8bf4\u5531    0 days 00:03:40\n\u84dd\u8c03    0 days 00:03:45\n\u7535\u5b50    0 days 00:03:49\n\u7235\u58eb    0 days 00:03:54\n\u91d1\u5c5e    0 days 00:03:58\nR&amp;B   0 days 00:04:03\n\u563b\u54c8    0 days 00:04:04\n\u4e61\u6751    0 days 00:04:05\n\u6d41\u884c    0 days 00:04:12\n\u53e4\u5178    0 days 00:04:16\n\u53e4\u98ce    0 days 00:04:17\n\u6c11\u8c23    0 days 00:04:36\n\u6447\u6eda    0 days 00:05:00\n\u670b\u514b    0 days 00:06:26\nName: duration_ms, dtype: timedelta64[ns]\n<\/code><\/pre>\n<\/blockquote>\n<h4><code>join<\/code>\u5408\u5e76<\/h4>\n<ul>\n<li>\u53ea\u80fd\u6c34\u5e73\u8fde\u63a5\u4e24\u4e2a\u6216\u591a\u4e2apandas\u5bf9\u8c61<\/li>\n<li>\u5bf9\u9f50\u662f\u9760\u88ab\u8c03\u7528\u7684dataframe\u7684\u5217\u7d22\u5f15\u6216\u884c\u7d22\u5f15\u548c\u53e6\u4e00\u4e2a\u5bf9\u8c61\u7684\u884c\u7d22\u5f15(\u4e0d\u80fd\u662f\u5217\u7d22\u5f15)<\/li>\n<li>\u9ed8\u8ba4\u662f\u5de6\u8fde\u63a5(\u4e5f\u53ef\u4ee5\u8bbe\u4e3a\u5185\u8fde\u63a5\uff0c\u5916\u8fde\u63a5\uff0c\u53f3\u8fde\u63a5)<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># \u5408\u5e76\u6570\u636e\n# outer\u5916\u8fde\u63a5\ndf_all = df1.join(df2, lsuffix=&#039;_1&#039;, rsuffix=&#039;_2&#039;, how=&#039;outer&#039;)\nprint(df_all)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">  Symbol_1  Shares_1  Low_1  High_1 Symbol_2  Shares_2  Low_2  High_2\n0     AAPL        50    120     140     AAPL        80     95     110\n1       GE       100     30      40     TSLA        50     80     130\n2      IBM        87     75      95      WMT        40     55      70\n3      SLB        20     55      85     MSFT        60    320     380\n4      TXN       500     15      23     NVDA        35    880    1200\n<\/code><\/pre>\n<\/blockquote>\n<p>\u5c06\u4e24\u4e2adataframe\u7684Symbol\u8bbe\u7f6e\u4e3a\u884c\u7d22\u5f15\uff0c\u518d\u6b21join\u6570\u636e<\/p>\n<pre><code class=\"language-python\"># \u5c06\u4e24\u4e2adataframe\u7684Symbol\u8bbe\u7f6e\u4e3a\u884c\u7d22\u5f15\uff0c\u518d\u6b21join\u6570\u636e\ndf_all = df1.set_index(&#039;Symbol&#039;).join(df2.set_index(&#039;Symbol&#039;), lsuffix=&#039;_1&#039;, rsuffix=&#039;_2&#039;, how=&#039;outer&#039;)\nprint(df_all)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">        Shares_1  Low_1  High_1  Shares_2  Low_2  High_2\nSymbol                                                  \nAAPL        50.0  120.0   140.0      80.0   95.0   110.0\nGE         100.0   30.0    40.0       NaN    NaN     NaN\nIBM         87.0   75.0    95.0       NaN    NaN     NaN\nMSFT         NaN    NaN     NaN      60.0  320.0   380.0\nNVDA         NaN    NaN     NaN      35.0  880.0  1200.0\nSLB         20.0   55.0    85.0       NaN    NaN     NaN\nTSLA         NaN    NaN     NaN      50.0   80.0   130.0\nTXN        500.0   15.0    23.0       NaN    NaN     NaN\nWMT          NaN    NaN     NaN      40.0   55.0    70.0\n<\/code><\/pre>\n<\/blockquote>\n<h2>\u4e5d\u3001\u7f3a\u5931\u6570\u636e\u5904\u7406<\/h2>\n<h3>1.NaN\u7b80\u4ecb<\/h3>\n<p>pandas\u4e2d\u7684NaN\u503c\u6765\u81eanumpy\u5e93\uff0cnumpy\u4e2d\u7f3a\u5931\u503c\u6709\u51e0\u79cd\u8868\u793a\u5f62\u5f0f\uff0cNaN,NAN,nan,\u4ed6\u4eec\u90fd\u4e00\u6837<\/p>\n<p>\u7f3a\u5931\u503c\u548c\u5176\u4ed6\u7c7b\u578b\u7684\u6570\u636e\u4e0d\u540c\uff0c\u4ed6\u6beb\u65e0\u610f\u4e49\uff0cNaN\u4e0d\u7b49\u4e8e0,\u4e5f\u4e0d\u7b49\u4e8e\u7a7a\u4e32<\/p>\n<pre><code class=\"language-python\">from numpy import nan\n\nprint(nan==True)\nprint(nan==False)\nprint(nan==0)\nprint(nan==&#039;&#039;)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u663e\u793a\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">False\nFalse\nFalse\nFalse\n<\/code><\/pre>\n<\/blockquote>\n<p>pandas\u63d0\u4f9b\u4e86<\/p>\n<p><code>isnull<\/code>\/<code>isna<\/code>\u65b9\u6cd5\uff0c\u7528\u4e8e\u6d4b\u8bd5\u67d0\u4e2a\u503c\u662f\u5426\u4e3a\u7f3a\u5931\u503c<\/p>\n<p><code>notnull<\/code>\/<code>notna<\/code>\u65b9\u6cd5\u4e5f\u53ef\u4ee5\u7528\u4e8e\u5224\u65ad\u67d0\u4e2a\u503c\u662f\u5426\u4e3a\u7f3a\u5931\u503c<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\nprint(pd.isnull(nan))\nprint(pd.notnull(nan))\nprint(pd.isna(nan))\nprint(pd.notna(nan))\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u663e\u793a\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">True\nFalse\nTrue\nFalse\n<\/code><\/pre>\n<\/blockquote>\n<h3>2.\u7f3a\u5931\u503c\u4ece\u4f55\u800c\u6765<\/h3>\n<p>\u7f3a\u5931\u503c\u7684\u6765\u6e90\u6709\u4e24\u4e2a<\/p>\n<ul>\n<li>\u539f\u59cb\u6570\u636e\u5305\u542b\u7f3a\u5931\u503c<\/li>\n<li>\u6570\u636e\u6574\u7406\u8fc7\u7a0b\u4e2d\u4ea7\u751f\u7f3a\u5931\u503c<\/li>\n<\/ul>\n<h4>\u52a0\u8f7d\u5305\u542b\u7f3a\u5931\u7684\u6570\u636e<\/h4>\n<pre><code class=\"language-csv\">ident,site,dated\n0,619,1927-02-08\n1,622,1927-02-10\n2,734,1939-01-07\n3,735,1930-01-12\n4,751,1930-02-26\n5,752,1945-05-18\n6,802,\n7,815,?\n8,830,nan\n9,856,1968-11-22\n<\/code><\/pre>\n<p>\u52a0\u8f7d\u6570\u636e\u65f6\u53ef\u4ee5\u901a\u8fc7<code>keep_default_na<\/code>\u4e0e<code>na_values<\/code>\u6307\u5b9a\u52a0\u8f7d\u6570\u636e\u65f6\u7684\u7f3a\u5931\u503c<\/p>\n<h5>\u9ed8\u8ba4<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;a.csv&#039;, na_values=[],keep_default_na=True)\nprint(df)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   ident  site       dated\n0      0   619  1927-02-08\n1      1   622  1927-02-10\n2      2   734  1939-01-07\n3      3   735  1930-01-12\n4      4   751  1930-02-26\n5      5   752  1945-05-18\n6      6   802         NaN\n7      7   815           ?\n8      8   830         NaN\n9      9   856  1968-11-22\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u60c5\u51b5\u4e00<\/h5>\n<pre><code class=\"language-python\"># \u5c06\u95ee\u53f7\u8bbe\u7f6e\u4e5f\u4e3a\u7f3a\u5931\u503c\ndf1 = pd.read_csv(&#039;a.csv&#039;, na_values=&#039;?&#039;,keep_default_na=True)\nprint(df1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   ident  site       dated\n0      0   619  1927-02-08\n1      1   622  1927-02-10\n2      2   734  1939-01-07\n3      3   735  1930-01-12\n4      4   751  1930-02-26\n5      5   752  1945-05-18\n6      6   802         NaN\n7      7   815         NaN\n8      8   830         NaN\n9      9   856  1968-11-22\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u60c5\u51b5\u4e8c<\/h5>\n<pre><code class=\"language-python\">df2 = pd.read_csv(&#039;a.csv&#039;, na_values=&#039;?&#039;,keep_default_na=False)\nprint(df2)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   ident  site       dated\n0      0   619  1927-02-08\n1      1   622  1927-02-10\n2      2   734  1939-01-07\n3      3   735  1930-01-12\n4      4   751  1930-02-26\n5      5   752  1945-05-18\n6      6   802            \n7      7   815         NaN\n8      8   830         nan\n9      9   856  1968-11-22\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u60c5\u51b5\u4e09<\/h5>\n<pre><code class=\"language-python\">df3 = pd.read_csv(&#039;a.csv&#039;, na_values=[] ,keep_default_na=False)\nprint(df3)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">   ident  site       dated\n0      0   619  1927-02-08\n1      1   622  1927-02-10\n2      2   734  1939-01-07\n3      3   735  1930-01-12\n4      4   751  1930-02-26\n5      5   752  1945-05-18\n6      6   802            \n7      7   815           ?\n8      8   830         nan\n9      9   856  1968-11-22\n<\/code><\/pre>\n<\/blockquote>\n<h3>3.\u5904\u7406\u7f3a\u5931\u503c<\/h3>\n<p><strong>\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/www.kaggle.com\/c\/titanic\/data?select=train.csv\">train.csv<\/a><\/li>\n<li><a href=\"https:\/\/www.kaggle.com\/c\/titanic\/data?select=test.csv\">test.csv<\/a><\/li>\n<\/ul>\n<h4>\u8ba1\u7b97\u7f3a\u5931\u6bd4\u4f8b<\/h4>\n<h5>\u52a0\u8f7d\u6570\u636e<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf1 = pd.read_csv(&#039;train.csv&#039;)\ndf2 = pd.read_csv(&#039;test.csv&#039;)\nprint(df1.info())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">&lt;class &#039;pandas.DataFrame&#039;&gt;\nRangeIndex: 891 entries, 0 to 890\nData columns (total 12 columns):\n #   Column       Non-Null Count  Dtype  \n---  ------       --------------  -----  \n 0   PassengerId  891 non-null    int64  \n 1   Survived     891 non-null    int64  \n 2   Pclass       891 non-null    int64  \n 3   Name         891 non-null    str    \n 4   Sex          891 non-null    str    \n 5   Age          714 non-null    float64\n 6   SibSp        891 non-null    int64  \n 7   Parch        891 non-null    int64  \n 8   Ticket       891 non-null    str    \n 9   Fare         891 non-null    float64\n 10  Cabin        204 non-null    str    \n 11  Embarked     889 non-null    str    \ndtypes: float64(2), int64(5), str(5)\nmemory usage: 83.7 KB\nNone\n<\/code><\/pre>\n<\/blockquote>\n<p>\u6b64\u6570\u636e\u4e3a\u6cf0\u5766\u5c3c\u514b\u53f7\u751f\u5b58\u9884\u6d4b\u6570\u636e\uff0cSurvived\u5b57\u6bb5\uff0c\u4ee3\u8868\u8be5\u540d\u4e58\u5ba2\u662f\u5426\u83b7\u6551<\/p>\n<pre><code class=\"language-python\">print(df1[&#039;Survived&#039;].value_counts())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Survived\n0    549\n1    342\nName: count, dtype: int64\n<\/code><\/pre>\n<\/blockquote>\n<p>\u767e\u5206\u6bd4<\/p>\n<pre><code class=\"language-python\">print(df1[&#039;Survived&#039;].value_counts(normalize=True))\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Survived\n0    0.616162\n1    0.383838\nName: proportion, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<p>\u68c0\u6d4b\u6570\u636e\u96c6\u4e2d\u6bcf\u4e00\u5217\u4e2d\u7f3a\u5931\u503c\u7684\u767e\u5206\u6bd4<\/p>\n<pre><code class=\"language-python\"># \u8ba1\u7b97\u6240\u6709\u7684\u7f3a\u5931\u503c\nnull_all = df1.isnull().sum()\nprint(null_all)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">PassengerId      0\nSurvived         0\nPclass           0\nName             0\nSex              0\nAge            177\nSibSp            0\nParch            0\nTicket           0\nFare             0\nCabin          687\nEmbarked         2\ndtype: int64\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u8ba1\u7b97\u7f3a\u5931\u503c\u6bd4\u4f8b\nproportion = 100 * null_all \/ len(df1)\nprint(proportion)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">PassengerId     0.000000\nSurvived        0.000000\nPclass          0.000000\nName            0.000000\nSex             0.000000\nAge            19.865320\nSibSp           0.000000\nParch           0.000000\nTicket          0.000000\nFare            0.000000\nCabin          77.104377\nEmbarked        0.224467\ndtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u5c06\u7ed3\u679c\u62fc\u6210dataframe\nnull_1 = pd.concat([null_all, proportion], axis=1)\nprint(null_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">               0          1\nPassengerId    0   0.000000\nSurvived       0   0.000000\nPclass         0   0.000000\nName           0   0.000000\nSex            0   0.000000\nAge          177  19.865320\nSibSp          0   0.000000\nParch          0   0.000000\nTicket         0   0.000000\nFare           0   0.000000\nCabin        687  77.104377\nEmbarked       2   0.224467\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u5c06\u5217\u91cd\u547d\u540d\nnull_1.columns = [&#039;\u7f3a\u5931\u503c&#039;, &#039;\u5360\u6bd4(%)&#039;]\nprint(null_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">             \u7f3a\u5931\u503c      \u5360\u6bd4(%)\nPassengerId    0   0.000000\nSurvived       0   0.000000\nPclass         0   0.000000\nName           0   0.000000\nSex            0   0.000000\nAge          177  19.865320\nSibSp          0   0.000000\nParch          0   0.000000\nTicket         0   0.000000\nFare           0   0.000000\nCabin        687  77.104377\nEmbarked       2   0.224467\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u6309\u7167\u7f3a\u5931\u503c\u964d\u5e8f\u6392\u5e8f\uff0c\u628a\u7f3a\u5931\u503c\u4e3a0\u7684\u6570\u636e\u6392\u9664\nnull_1 = null_1[null_1.iloc[:,1] != 0].sort_values(&#039;\u5360\u6bd4(%)&#039;,ascending=False).round(1)    # round(1)\u4fdd\u7559\u4e00\u4f4d\u5c0f\u6570\nprint(null_1)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">          \u7f3a\u5931\u503c  \u5360\u6bd4(%)\nCabin     687   77.1\nAge       177   19.9\nEmbarked    2    0.2\n<\/code><\/pre>\n<\/blockquote>\n<h5>\u5b8c\u6574\u4ee3\u7801<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf1 = pd.read_csv(&#039;train.csv&#039;)\ndf2 = pd.read_csv(&#039;test.csv&#039;)\nprint(df1.info())\n\n# \u8be5\u540d\u4e58\u5ba2\u662f\u5426\u83b7\u6551\nprint(df1[&#039;Survived&#039;].value_counts())\nprint(df1[&#039;Survived&#039;].value_counts(normalize=True))\n\n# \u68c0\u6d4b\u6570\u636e\u96c6\u4e2d\u6bcf\u4e00\u5217\u4e2d\u7f3a\u5931\u503c\u7684\u767e\u5206\u6bd4\n# \u8ba1\u7b97\u6240\u6709\u7684\u7f3a\u5931\u503c\nnull_all = df1.isnull().sum()\n# \u8ba1\u7b97\u7f3a\u5931\u503c\u6bd4\u4f8b\nproportion = 100 * null_all \/ len(df1)\n# \u5c06\u7ed3\u679c\u62fc\u6210dataframe\nnull_1 = pd.concat([null_all, proportion], axis=1)\n# \u5c06\u5217\u91cd\u547d\u540d\nnull_1.columns = [&#039;\u7f3a\u5931\u503c&#039;, &#039;\u5360\u6bd4(%)&#039;]\n# \u6309\u7167\u7f3a\u5931\u503c\u964d\u5e8f\u6392\u5e8f\uff0c\u628a\u7f3a\u5931\u503c\u4e3a0\u7684\u6570\u636e\u6392\u9664\nnull_1 = null_1[null_1.iloc[:,1] != 0].sort_values(&#039;\u5360\u6bd4(%)&#039;,ascending=False).round(1)    # round(1)\u4fdd\u7559\u4e00\u4f4d\u5c0f\u6570\nprint(null_1)\n<\/code><\/pre>\n<h4>\u7f3a\u5931\u503c\u53ef\u89c6\u5316<\/h4>\n<p>\u4f7f\u7528missingno\u5e93\u5bf9\u7f3a\u5931\u503c\u8fdb\u884c\u53ef\u89c6\u5316<\/p>\n<ul>\n<li>\n<p>\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528missingno\u5bf9\u7f3a\u5931\u503c\u8fdb\u884c\u53ef\u89c6\u5316<\/p>\n<\/li>\n<li>\n<p>\u4f7f\u7528missingno\u5f88\u7b80\u5355<\/p>\n<pre><code class=\"language-shell\">pip install missingno\n<\/code><\/pre>\n<\/li>\n<\/ul>\n<h5>\u65b9\u6cd5\u4e00<\/h5>\n<pre><code class=\"language-python\">import missingno as msno\nimport pandas as pd\ndf1 = pd.read_csv(&#039;train.csv&#039;)\nmsno.bar(df1)\n<\/code><\/pre>\n<h5>\u65b9\u6cd5\u4e8c<\/h5>\n<pre><code class=\"language-python\">msno.matrix(df1)\n<\/code><\/pre>\n<h4>\u6570\u636e\u7f3a\u5931\u539f\u56e0<\/h4>\n<p>\u67e5\u770b\u7f3a\u5931\u503c\u4e4b\u95f4\u662f\u5426\u5177\u6709\u76f8\u5173\u6027<\/p>\n<pre><code class=\"language-python\">msno.heatmap(df1)\n<\/code><\/pre>\n<h3>4.\u7f3a\u5931\u503c\u5904\u7406<\/h3>\n<h4>\u5220\u9664\u7f3a\u5931\u503c<\/h4>\n<p>\u5220\u9664\u7f3a\u5931\u503c\uff1a\u5220\u9664\u7f3a\u5931\u503c\u4f1a\u635f\u5931\u4fe1\u606f\uff0c\u5e76\u4e0d\u63a8\u8350\u5220\u9664\uff0c\u5f53\u7f3a\u5931\u6570\u636e\u5360\u6bd4\u8f83\u4f4e\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u5c1d\u8bd5\u4f7f\u7528\u5220\u9664\u7f3a\u5931\u503c<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;train.csv&#039;)\n# \u590d\u5236\u4e00\u4efd\ndf1 = df.copy()\n<\/code><\/pre>\n<h5>\u6309\u884c\u5220\u9664<\/h5>\n<p><code>.dropna()<\/code>\u5c5e\u6027\u503c<\/p>\n<ul>\n<li>axis\uff1a\u6307\u5b9a\u884c\/\u5217\n<ul>\n<li>0\/index\uff1a\u884c<\/li>\n<li>1\/columns\uff1a\u5217<\/li>\n<\/ul>\n<\/li>\n<li>subset\uff1a\u6307\u5b9a\u5217\u540d<\/li>\n<li>how\n<ul>\n<li>any\uff1a\u6bcf\u5217\u5176\u4e2d\u6709\u4e00\u884c\u4e3a\u7a7a\uff0c\u5c31\u5220\u9664\u90a3\u4e00\u884c<\/li>\n<li>all\uff1a\u4e00\u822c\u7528\u5728\u591a\u5217\uff0c\u6bcf\u5217\u7684\u540c\u4e00\u884c\u90fd\u4e3a\u7f3a\u5931\u503c\uff0c\u5c31\u5220\u9664\u90a3\u884c<\/li>\n<\/ul>\n<\/li>\n<li>thresh\uff1a\u6ee1\u8db3\u6307\u5b9a\u7f3a\u5931\u503c\u6570\u91cf\uff0c\u5bf9\u5e94\u7684\u884c\u624d\u88ab\u5220\u6389<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># \u6309\u884c\u5220\u9664\ndf_1 = df1.dropna(axis=0,subset=&#039;Age&#039;,how=&#039;any&#039;)\nprint(df.info())\nprint(df_1.info())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u5bf9\u6bd4<\/strong><\/p>\n<table>\n<thead>\n<tr>\n<th>df1<\/th>\n<th>df_1<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/>RangeIndex: 891 entries, 0 to 890<br \/>Data columns (total 12 columns):<br \/> #   Column       Non-Null Count  Dtype  <br \/>&#8212;  &#8212;&#8212;       &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;  <br \/> 0   PassengerId  891 non-null    int64  <br \/> 1   Survived     891 non-null    int64  <br \/> 2   Pclass       891 non-null    int64  <br \/> 3   Name         891 non-null    str    <br \/> 4   Sex          891 non-null    str    <br \/> 5   Age          714 non-null    float64<br \/> 6   SibSp        891 non-null    int64  <br \/> 7   Parch        891 non-null    int64  <br \/> 8   Ticket       891 non-null    str    <br \/> 9   Fare         891 non-null    float64<br \/> 10  Cabin        204 non-null    str    <br \/> 11  Embarked     889 non-null    str    <br \/>dtypes: float64(2), int64(5), str(5)<br \/>memory usage: 83.7 KB<br \/>None<\/td>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/>Index: 714 entries, 0 to 890<br \/>Data columns (total 12 columns):<br \/> #   Column       Non-Null Count  Dtype  <br \/>&#8212;  &#8212;&#8212;       &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;  <br \/> 0   PassengerId  714 non-null    int64  <br \/> 1   Survived     714 non-null    int64  <br \/> 2   Pclass       714 non-null    int64  <br \/> 3   Name         714 non-null    str    <br \/> 4   Sex          714 non-null    str    <br \/> 5   Age          714 non-null    float64<br \/> 6   SibSp        714 non-null    int64  <br \/> 7   Parch        714 non-null    int64  <br \/> 8   Ticket       714 non-null    str    <br \/> 9   Fare         714 non-null    float64<br \/> 10  Cabin        185 non-null    str    <br \/> 11  Embarked     712 non-null    str    <br \/>dtypes: float64(2), int64(5), str(5)<br \/>memory usage: 72.5 KB<br \/>None<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<h4>\u586b\u5145\u7f3a\u5931\u503c<\/h4>\n<p>\u586b\u5145\u7f3a\u5931\u503c\u662f\u6307\u7528\u4e00\u4e2a\u4f30\u7b97\u7684\u503c\u6765\u4ee3\u66ff\u7f3a\u5931\u6570<\/p>\n<p><code>df.fillna()<\/code><\/p>\n<ul>\n<li>\n<p>value<\/p>\n<ul>\n<li>\n<p>\u5e38\u6570<\/p>\n<\/li>\n<li>\n<p>\u4f7f\u7528\u8ba1\u7b97\u540e\u7684\u7ed3\u679c\u586b\u5145\uff0c\u4f8b\uff1a<\/p>\n<pre><code class=\"language-python\">df[&#039;xx&#039;].mean()\n<\/code><\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># \u586b\u5145\u7f3a\u5931\u503c\ndf_2 = df1.fillna(0)\nprint(df_2)\n<\/code><\/pre>\n<h4>\u65f6\u95f4\u5e8f\u5217\u7f3a\u5931\u503c\u5904\u7406<\/h4>\n<p>\u4f7f\u7528pandas\u7684<code>fillna<\/code>\u6765\u5904\u7406\u8fd9\u7c7b\u60c5\u51b5<\/p>\n<ul>\n<li>\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0a\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145<\/li>\n<li>\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0b\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145<\/li>\n<li>\u7ebf\u6027\u63d2\u503c\u65b9\u6cd5<\/li>\n<\/ul>\n<p>\u52a0\u8f7d\u6570\u636e\uff0c\u6570\u636e\u96c6\u4e3a\u5370\u5ea6\u57ce\u5e02\u7a7a\u6c14\u8d28\u91cf\u6570\u636e(2015-2020)<\/p>\n<blockquote>\n<p>\u5370\u5ea6\u57ce\u5e02\u7a7a\u6c14\u8d28\u91cf\u6570\u636e\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"https:\/\/www.kaggle.com\/datasets\/rohanrao\/air-quality-data-in-india?select=city_day.csv\">city_day.csv<\/a><\/p>\n<\/blockquote>\n<h5>\u65b9\u6cd5\u4e00<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;city_day.csv&#039;, index_col=&#039;Date&#039;)\nprint(df.info())\ndf_1 = pd.read_csv(&#039;city_day.csv&#039;, index_col=&#039;Date&#039;, parse_dates=True)\nprint(df_1.info())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u5bf9\u6bd4<\/strong><\/p>\n<table>\n<thead>\n<tr>\n<th>df<\/th>\n<th>df_1<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/><font color='red'><strong>Index<\/strong><\/font>: 29531 entries, 2015-01-01 to 2020-07-01<br \/>Data columns (total 15 columns):<br \/> #   Column      Non-Null Count  Dtype  <br \/>&#8212;  &#8212;&#8212;      &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;  <br \/> 0   City        29531 non-null  str    <br \/> 1   PM2.5       24933 non-null  float64<br \/> 2   PM10        18391 non-null  float64<br \/> 3   NO          25949 non-null  float64<br \/> 4   NO2         25946 non-null  float64<br \/> 5   NOx         25346 non-null  float64<br \/> 6   NH3         19203 non-null  float64<br \/> 7   CO          27472 non-null  float64<br \/> 8   SO2         25677 non-null  float64<br \/> 9   O3          25509 non-null  float64<br \/> 10  Benzene     23908 non-null  float64<br \/> 11  Toluene     21490 non-null  float64<br \/> 12  Xylene      11422 non-null  float64<br \/> 13  AQI         24850 non-null  float64<br \/> 14  AQI_Bucket  24850 non-null  str    <br \/>dtypes: float64(13), str(2)<br \/>memory usage: 3.6+ MB<br \/>None<\/td>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/><font color='red'><strong>DatetimeIndex<\/strong><\/font>: 29531 entries, 2015-01-01 to 2020-07-01<br \/>Data columns (total 15 columns):<br \/> #   Column      Non-Null Count  Dtype  <br \/>&#8212;  &#8212;&#8212;      &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;  <br \/> 0   City        29531 non-null  str    <br \/> 1   PM2.5       24933 non-null  float64<br \/> 2   PM10        18391 non-null  float64<br \/> 3   NO          25949 non-null  float64<br \/> 4   NO2         25946 non-null  float64<br \/> 5   NOx         25346 non-null  float64<br \/> 6   NH3         19203 non-null  float64<br \/> 7   CO          27472 non-null  float64<br \/> 8   SO2         25677 non-null  float64<br \/> 9   O3          25509 non-null  float64<br \/> 10  Benzene     23908 non-null  float64<br \/> 11  Toluene     21490 non-null  float64<br \/> 12  Xylene      11422 non-null  float64<br \/> 13  AQI         24850 non-null  float64<br \/> 14  AQI_Bucket  24850 non-null  str    <br \/>dtypes: float64(13), str(2)<br \/>memory usage: 3.6 MB<br \/>None<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<h5>\u65b9\u6cd5\u4e8c<\/h5>\n<pre><code class=\"language-python\">df_2 = pd.read_csv(&#039;city_day.csv&#039;,parse_dates=[&#039;Date&#039;])\nprint(df.info())\nprint(df_2.info())\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u5bf9\u6bd4<\/strong><\/p>\n<table>\n<thead>\n<tr>\n<th>df<\/th>\n<th>df_2<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/>Index: 29531 entries, 2015-01-01 to 2020-07-01<br \/>Data columns (total 15 columns):<br \/> #   Column      Non-Null Count  Dtype  <br \/>&#8212;  &#8212;&#8212;      &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;  <br \/> 0   City        29531 non-null  str    <br \/> 1   PM2.5       24933 non-null  <font color='red'><strong>float64<\/strong><\/font><br \/> 2   PM10        18391 non-null  float64<br \/> 3   NO          25949 non-null  float64<br \/> 4   NO2         25946 non-null  float64<br \/> 5   NOx         25346 non-null  float64<br \/> 6   NH3         19203 non-null  float64<br \/> 7   CO          27472 non-null  float64<br \/> 8   SO2         25677 non-null  float64<br \/> 9   O3          25509 non-null  float64<br \/> 10  Benzene     23908 non-null  float64<br \/> 11  Toluene     21490 non-null  float64<br \/> 12  Xylene      11422 non-null  float64<br \/> 13  AQI         24850 non-null  float64<br \/> 14  AQI_Bucket  24850 non-null  str    <br \/>dtypes: float64(13), str(2)<br \/>memory usage: 3.6+ MB<br \/>None<\/td>\n<td>&lt;class &#039;pandas.DataFrame&#039;&gt;<br \/>RangeIndex: 29531 entries, 0 to 29530<br \/>Data columns (total 16 columns):<br \/> #   Column      Non-Null Count  Dtype         <br \/>&#8212;  &#8212;&#8212;      &#8212;&#8212;&#8212;&#8212;&#8211;  &#8212;&#8211;         <br \/> 0   City        29531 non-null  str           <br \/> 1   Date        29531 non-null  <font color='red'><strong>datetime64[us]<\/strong><\/font><br \/> 2   PM2.5       24933 non-null  float64       <br \/> 3   PM10        18391 non-null  float64       <br \/> 4   NO          25949 non-null  float64       <br \/> 5   NO2         25946 non-null  float64       <br \/> 6   NOx         25346 non-null  float64       <br \/> 7   NH3         19203 non-null  float64       <br \/> 8   CO          27472 non-null  float64       <br \/> 9   SO2         25677 non-null  float64       <br \/> 10  O3          25509 non-null  float64       <br \/> 11  Benzene     23908 non-null  float64       <br \/> 12  Toluene     21490 non-null  float64       <br \/> 13  Xylene      11422 non-null  float64       <br \/> 14  AQI         24850 non-null  float64       <br \/> 15  AQI_Bucket  24850 non-null  str           <br \/>dtypes: <code>datetime64[us](1)<\/code>, float64(13), str(2)<br \/>memory usage: 3.6 MB<br \/>None<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p><strong><code>parse_dates<\/code>\u5982\u679c\u8bbe\u7f6e\u4e3aTrue\uff0c\u89e3\u6790\u7d22\u5f15\u4f5c\u4e3a\u65f6\u95f4\u65e5\u671f\uff0c\u5982\u679c\u76f4\u63a5\u4f20\u4eba\u5217\u540d\uff0c\u6309\u7167\u5217\u540d\u8fdb\u884c\u89e3\u6790<\/strong><\/p>\n<h5>\u7edf\u8ba1\u7f3a\u5931\u503c<\/h5>\n<pre><code class=\"language-python\">import pandas as pd\n\ndef missing_values(df):\n    # \u8ba1\u7b97\u6240\u6709\u7f3a\u5931\u503c\n    null_all = df.isnull().sum()\n    # \u8ba1\u7b97\u7f3a\u5931\u503c\u6bd4\u4f8b\n    proportion = 100 * null_all \/ len(df)\n    # \u5c06\u7ed3\u679c\u62fc\u6210dataframe\n    null_df = pd.concat([null_all,proportion],axis=1)\n    # \u5c06\u5217\u91cd\u547d\u540d\n    null_df.columns = [&#039;\u7f3a\u5931\u503c&#039;,&#039;\u5360\u6bd4(%)&#039;]\n    # \u5c06\u7ed3\u679c\u4e3a0\u7684\u53bb\u9664\uff0c\u5e76\u6392\u5e8f\n    null_df = null_df[null_df.iloc[:,1] != 0].sort_values(&#039;\u5360\u6bd4(%)&#039;,ascending=False).round(1)\n    return null_df\n\ncity_day = pd.read_csv(&#039;city_day.csv&#039;, index_col=&#039;Date&#039;,parse_dates=True)\ncity_day_1 = city_day.copy()\n\n# \u7edf\u8ba1\u7f3a\u5931\u503c\nnull_value = missing_values(city_day_1)\nprint(null_value)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">              \u7f3a\u5931\u503c  \u5360\u6bd4(%)\nXylene      18109   61.3\nPM10        11140   37.7\nNH3         10328   35.0\nToluene      8041   27.2\nBenzene      5623   19.0\nAQI          4681   15.9\nAQI_Bucket   4681   15.9\nPM2.5        4598   15.6\nNOx          4185   14.2\nO3           4022   13.6\nSO2          3854   13.1\nNO2          3585   12.1\nNO           3582   12.1\nCO           2059    7.0\n<\/code><\/pre>\n<\/blockquote>\n<p>\u6570\u636e\u4e2d\u6709\u5f88\u591a\u7f3a\u5931\u503c\u6bd4\u5982Xylene(\u4e8c\u7532\u82ef)\u548cPM10\u6709\u8d85\u8fc750%\u7684\u7f3a\u5931\u503c<\/p>\n<pre><code class=\"language-python\"># \u67e5\u770b\u5305\u542b\u7f3a\u5931\u6570\u636e\u90e8\u5206\nprint(city_day_1[&#039;Xylene&#039;][50:64])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Date\n2015-02-20     7.48\n2015-02-21    15.44\n2015-02-22     8.47\n2015-02-23    28.46\n2015-02-24     6.05\n2015-02-25     0.81\n2015-02-26      NaN\n2015-02-27      NaN\n2015-02-28      NaN\n2015-03-01     1.32\n2015-03-02     0.22\n2015-03-03     2.25\n2015-03-04     1.55\n2015-03-05     4.13\nName: Xylene, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<h6>\u4f7f\u7528<code>ffill<\/code>\u586b\u5145<\/h6>\n<p>\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0a\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145<\/p>\n<blockquote>\n<p><font color='red'><strong>\u6ce8\uff1a<\/strong><\/font>pandas 2.0+\u7248\u672c<strong>\u5e9f\u5f03\u5e76\u79fb\u9664<\/strong>\u4e86<code>method<\/code>\u3001<code>limit<\/code> \u7b49\u5173\u952e\u5b57\u53c2\u6570\uff0c\u540c\u65f6\u63d0\u4f9b\u4e86\u66f4\u76f4\u89c2\u7684\u66ff\u4ee3\u65b9\u6cd5<\/p>\n<\/blockquote>\n<pre><code class=\"language-python\"># ffill\uff1a\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0a\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145\n# \u8001\u7248\u672c\n# city_day_1 = city_day_ffill.fillna(method=&#039;ffill&#039;)\ncity_day_ffill = city_day_1.ffill()\nprint(city_day_ffill[&#039;Xylene&#039;][50:64])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Date\n2015-02-20     7.48\n2015-02-21    15.44\n2015-02-22     8.47\n2015-02-23    28.46\n2015-02-24     6.05\n2015-02-25     0.81\n2015-02-26     0.81\n2015-02-27     0.81\n2015-02-28     0.81\n2015-03-01     1.32\n2015-03-02     0.22\n2015-03-03     2.25\n2015-03-04     1.55\n2015-03-05     4.13\nName: Xylene, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<h6>\u4f7f\u7528<code>bfill<\/code>\u586b\u5145<\/h6>\n<p>\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0b\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145<\/p>\n<pre><code class=\"language-python\"># bfill\uff1a\u7528\u65f6\u95f4\u5e8f\u5217\u4e2d\u7a7a\u503c\u7684\u4e0b\u4e00\u4e2a\u975e\u7a7a\u503c\u586b\u5145\ncity_day_bfill = city_day_1.bfill()\nprint(city_day_bfill[&#039;Xylene&#039;][50:64])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Date\n2015-02-20     7.48\n2015-02-21    15.44\n2015-02-22     8.47\n2015-02-23    28.46\n2015-02-24     6.05\n2015-02-25     0.81\n2015-02-26     1.32\n2015-02-27     1.32\n2015-02-28     1.32\n2015-03-01     1.32\n2015-03-02     0.22\n2015-03-03     2.25\n2015-03-04     1.55\n2015-03-05     4.13\nName: Xylene, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<p>\u7ebf\u6027\u63d2\u503c<code>interpolate()<\/code><\/p>\n<p><font color='red'><strong>\u6ce8:<\/strong><\/font><code>interpolate()<\/code>\u662f<strong>\u6570\u503c\u578b\u6570\u636e\u4e13\u5c5e\u7684\u63d2\u503c\u65b9\u6cd5<\/strong>\uff0c\u4ec5\u80fd\u5bf9<code>int\/float<\/code>\u7c7b\u578b\u5217\u8fdb\u884c\u7ebf\u6027\u63a8\u7b97<\/p>\n<pre><code class=\"language-python\"># \u7ebf\u6027\u63d2\u503cinterpolate()\ncity_day_interpolate = city_day_1[[&#039;Xylene&#039;]].interpolate(numeric_only=True)\nprint(city_day_interpolate[&#039;Xylene&#039;][50:64])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">Date\n2015-02-20     7.4800\n2015-02-21    15.4400\n2015-02-22     8.4700\n2015-02-23    28.4600\n2015-02-24     6.0500\n2015-02-25     0.8100\n2015-02-26     0.9375\n2015-02-27     1.0650\n2015-02-28     1.1925\n2015-03-01     1.3200\n2015-03-02     0.2200\n2015-03-03     2.2500\n2015-03-04     1.5500\n2015-03-05     4.1300\nName: Xylene, dtype: float64\n<\/code><\/pre>\n<\/blockquote>\n<h6>\u5bf9\u6bd4<\/h6>\n<blockquote>\n<p><strong>\u5bf9\u6bd4<\/strong><\/p>\n<table>\n<thead>\n<tr>\n<th>ffill<\/th>\n<th>bfill<\/th>\n<th>interpolate<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Date<br \/>2015-02-20     7.48<br \/>2015-02-21    15.44<br \/>2015-02-22     8.47<br \/>2015-02-23    28.46<br \/>2015-02-24     6.05<br \/>2015-02-25     0.81<br \/><font color='red'>2015-02-26\u00a0 \u00a0 \u00a00.81<br \/>2015-02-27\u00a0 \u00a0 \u00a00.81<br \/>2015-02-28\u00a0 \u00a0 \u00a00.81<br \/><\/font>2015-03-01     1.32<br \/>2015-03-02     0.22<br \/>2015-03-03     2.25<br \/>2015-03-04     1.55<br \/>2015-03-05     4.13<br \/>Name: Xylene, dtype: float64<\/td>\n<td>Date<br \/>2015-02-20     7.48<br \/>2015-02-21    15.44<br \/>2015-02-22     8.47<br \/>2015-02-23    28.46<br \/>2015-02-24     6.05<br \/>2015-02-25     0.81<br \/><font color='red'>2015-02-26\u00a0 \u00a0 \u00a01.32<br \/>2015-02-27\u00a0 \u00a0 \u00a01.32<br \/>2015-02-28\u00a0 \u00a0 \u00a01.32<br \/><\/font>2015-03-01     1.32<br \/>2015-03-02     0.22<br \/>2015-03-03     2.25<br \/>2015-03-04     1.55<br \/>2015-03-05     4.13<br \/>Name: Xylene, dtype: float64<\/td>\n<td>Date<br \/>2015-02-20     7.4800<br \/>2015-02-21    15.4400<br \/>2015-02-22     8.4700<br \/>2015-02-23    28.4600<br \/>2015-02-24     6.0500<br \/>2015-02-25     0.8100<br \/><font color='red'>2015-02-26\u00a0 \u00a0 \u00a00.9375<br \/>2015-02-27\u00a0 \u00a0 \u00a01.0650<br \/>2015-02-28\u00a0 \u00a0 \u00a01.1925<br \/><\/font>2015-03-01     1.3200<br \/>2015-03-02     0.2200<br \/>2015-03-03     2.2500<br \/>2015-03-04     1.5500<br \/>2015-03-05     4.1300<br \/>Name: Xylene, dtype: float64<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<h2>\u5341\u3001\u6574\u7406\u6570\u636e<\/h2>\n<h3>1.melt\u6574\u7406\u6570\u636e<\/h3>\n<blockquote>\n<p>\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"https:\/\/github.com\/chendaniely\/pandas_for_everyone\/blob\/master\/data\/pew.csv\">github-pew.csv<\/a><\/p>\n<\/blockquote>\n<p>\u52a0\u8f7d\u7f8e\u56fd\u6536\u5165\u4e0e\u5b97\u6559\u4fe1\u4ef0\u6570\u636e\uff0c\u8fd9\u79cd\u6570\u636e\u79f0\u4e3a\u201c\u5bbd\u201d\u6570\u636e<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\npew = pd.read_csv(&#039;pew.csv&#039;)\n<\/code><\/pre>\n<p>pandas\u7684<code>melt<\/code>\u51fd\u6570\u53ef\u4ee5\u628a\u5bbd\u6570\u636e\u96c6\uff0c\u8f6c\u6362\u4e3a\u957f\u6570\u636e\u96c6<\/p>\n<p><code>melt<\/code>\u5373\u662f\u7c7b\u51fd\u6570\u4e5f\u662f\u5b9e\u4f8b\u51fd\u6570\uff0c\u4e5f\u5c31\u662f\u8bf4\u53ef\u4ee5<code>pd.melt<\/code>\u4e5f\u53ef\u4ee5\u4f7f\u7528<code>df.melt()<\/code><\/p>\n<table>\n<thead>\n<tr>\n<th>\u53c2\u6570<\/th>\n<th>\u7c7b\u578b<\/th>\n<th>\u8bf4\u660e<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>frame<\/td>\n<td>dataframe<\/td>\n<td>\u88ab<code>melt<\/code>\u7684\u6570\u636e\u96c6\u540d\u79f0\u5728<code>pd.melt()<\/code>\u4e2d\u4f7f\u7528<\/td>\n<\/tr>\n<tr>\n<td>id_vars<\/td>\n<td>tuple\/list\/ndarray<\/td>\n<td>\u53ef\u9009\u9879<strong>\u4e0d\u9700\u8981\u88ab\u8f6c\u6362\u7684\u5217\u540d<\/strong>\uff0c\u5728\u8f6c\u6362\u540e\u4f5c\u4e3a\u6807\u8bc6\u7b26\u5217(\u4e0d\u662f\u7d22\u5f15\u5217)<\/td>\n<\/tr>\n<tr>\n<td>value_vars<\/td>\n<td>tuple\/list\/ndarray<\/td>\n<td>\u53ef\u9009\u9879<strong>\u9700\u8981\u88ab\u8f6c\u6362\u7684\u73b0\u6709\u5217<\/strong>\u5982\u679c\u672a\u6307\u660e\uff0c\u9664<code>id_vars<\/code>\u4e4b\u5916\u7684\u5176\u4ed6\u5217\u90fd\u88ab\u8f6c\u6362<\/td>\n<\/tr>\n<tr>\n<td>var_name<\/td>\n<td>string<\/td>\n<td><code>variable<\/code>\u9ed8\u8ba4\u503c\u81ea\u5b9a\u4e49\u5217\u540d\u540d\u79f0<strong>\u8bbe\u7f6e\u7531<code>value_vars<\/code>\u7ec4\u6210\u65b0\u7684<code>column name<\/code><\/strong><\/td>\n<\/tr>\n<tr>\n<td>value_name<\/td>\n<td>string<\/td>\n<td>value\u9ed8\u8ba4\u503c\u81ea\u5b9a\u4e49\u5217\u540d\u540d\u79f0<strong>\u8bbe\u7f6e\u7531<code>value_vars<\/code>\u7684\u6570\u636e\u7ec4\u6210\u65b0\u7684<code>column name<\/code><\/strong><\/td>\n<\/tr>\n<tr>\n<td>col_level<\/td>\n<td>int\/string<\/td>\n<td>\u53ef\u9009\u9879\u5982\u679c\u662fMultilndex\uff0c\u5219\u4f7f\u7528\u6b64\u7ea7\u522b<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>\u4f7f\u7528melt\u5bf9\u4e0a\u9762\u7684pew\u6570\u636e\u96c6\u8fdb\u884c\u5904\u7406<\/p>\n<pre><code class=\"language-python\"># \u4f7f\u7528melt\u5bf9\u4e0a\u9762\u7684pew\u6570\u636e\u96c6\u8fdb\u884c\u5904\u7406\npew_long = pd.melt(pew, id_vars=&#039;religion&#039;)\nprint(pew_long)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">                  religion            variable  value\n0                 Agnostic               &lt;$10k     27\n1                  Atheist               &lt;$10k     12\n2                 Buddhist               &lt;$10k     27\n3                 Catholic               &lt;$10k    418\n4       Don\u2019t know\/refused               &lt;$10k     15\n..                     ...                 ...    ...\n175               Orthodox  Don&#039;t know\/refused     73\n176        Other Christian  Don&#039;t know\/refused     18\n177           Other Faiths  Don&#039;t know\/refused     71\n178  Other World Religions  Don&#039;t know\/refused      8\n179           Unaffiliated  Don&#039;t know\/refused    597\n\n[180 rows x 3 columns]\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\"># \u6307\u5b9a\u5217\u540d\npew_long = pd.melt(pew, id_vars=&#039;religion&#039;, var_name=&#039;a&#039;, value_name=&#039;b&#039;)\nprint(pew_long)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">                  religion                   a    b\n0                 Agnostic               &lt;$10k   27\n1                  Atheist               &lt;$10k   12\n2                 Buddhist               &lt;$10k   27\n3                 Catholic               &lt;$10k  418\n4       Don\u2019t know\/refused               &lt;$10k   15\n..                     ...                 ...  ...\n175               Orthodox  Don&#039;t know\/refused   73\n176        Other Christian  Don&#039;t know\/refused   18\n177           Other Faiths  Don&#039;t know\/refused   71\n178  Other World Religions  Don&#039;t know\/refused    8\n179           Unaffiliated  Don&#039;t know\/refused  597\n\n[180 rows x 3 columns]\n<\/code><\/pre>\n<\/blockquote>\n<h4>\u8f6c\u6362\u5c11\u6570\u5217<\/h4>\n<p>\u5728\u4f7f\u7528<code>melt<\/code>\u51fd\u6570\u8f6c\u6362\u6570\u636e\u7684\u65f6\u5019\uff0c\u4e5f\u53ef\u4ee5\u56fa\u5b9a\u591a\u5217\u6570\u636e\uff0c\u53ea\u8f6c\u6362\u5c11\u6570\u5217<\/p>\n<blockquote>\n<p>\u6587\u4ef6\u4e0b\u8f7d\u5730\u5740\uff1a<a href=\"https:\/\/www.kaggle.com\/datasets\/anairamcosta\/billboard\">billboard.csv<\/a><\/p>\n<\/blockquote>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;billboard.csv&#039;)\n<\/code><\/pre>\n<p>\u4f7f\u7528<code>melt<\/code>\u5bf9\u4e0a\u9762\u6570\u636e\u7684week\u8fdb\u884c\u5904\u7406\uff0c\u8f6c\u6362\u6210\u957f\u6570\u636e<\/p>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;billboard.csv&#039;)\n\nbillboard_long = pd.melt(df, id_vars=[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;],var_name=&#039;week&#039;,value_name=&#039;rating&#039;)\nprint(billboard_long)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">       year            artist  ...  week rating\n0      2000             2 Pac  ...   wk1   87.0\n1      2000           2Ge+her  ...   wk1   91.0\n2      2000      3 Doors Down  ...   wk1   81.0\n3      2000      3 Doors Down  ...   wk1   76.0\n4      2000          504 Boyz  ...   wk1   57.0\n...     ...               ...  ...   ...    ...\n24087  2000       Yankee Grey  ...  wk76    NaN\n24088  2000  Yearwood, Trisha  ...  wk76    NaN\n24089  2000   Ying Yang Twins  ...  wk76    NaN\n24090  2000     Zombie Nation  ...  wk76    NaN\n24091  2000   matchbox twenty  ...  wk76    NaN\n\n[24092 rows x 7 columns]\n<\/code><\/pre>\n<\/blockquote>\n<p>\u53ef\u4ee5\u5c06\u4e0a\u8ff0\u6570\u636e\u8fdb\u4e00\u6b65\u5904\u7406\uff0c\u5f53\u6211\u4eec\u67e5\u8be2\u4efb\u610f\u4e00\u9996\u6b4c\u66f2\u4fe1\u606f\u65f6\uff0c\u4f1a\u53d1\u73b0\u6570\u636e\u7684\u5b58\u50a8\u6709\u5197\u4f59\u60c5\u51b5<\/p>\n<pre><code class=\"language-python\"># \u67e5\u627e\u6b4c\u66f2\u4e3aLoser\u7684\u6240\u6709\u884c\nprint(billboard_long[billboard_long[&#039;track&#039;] == &#039;Loser&#039;])\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">       year        artist  track  time date.entered  week  rating\n3      2000  3 Doors Down  Loser  4:24   2000-10-21   wk1    76.0\n320    2000  3 Doors Down  Loser  4:24   2000-10-21   wk2    76.0\n637    2000  3 Doors Down  Loser  4:24   2000-10-21   wk3    72.0\n954    2000  3 Doors Down  Loser  4:24   2000-10-21   wk4    69.0\n1271   2000  3 Doors Down  Loser  4:24   2000-10-21   wk5    67.0\n...     ...           ...    ...   ...          ...   ...     ...\n22510  2000  3 Doors Down  Loser  4:24   2000-10-21  wk72     NaN\n22827  2000  3 Doors Down  Loser  4:24   2000-10-21  wk73     NaN\n23144  2000  3 Doors Down  Loser  4:24   2000-10-21  wk74     NaN\n23461  2000  3 Doors Down  Loser  4:24   2000-10-21  wk75     NaN\n23778  2000  3 Doors Down  Loser  4:24   2000-10-21  wk76     NaN\n\n[76 rows x 7 columns]\n<\/code><\/pre>\n<\/blockquote>\n<p>\u5b9e\u9645\u4e0a\uff0c\u4e0a\u9762\u7684\u6570\u636e\u5305\u542b\u4e86\u4e24\u7c7b\u6570\u636e\uff0c\u6b4c\u66f2\u4fe1\u606f\uff0c\u5468\u6392\u884c\u4fe1\u606f<\/p>\n<ul>\n<li>\u51cf\u5c11\u4e0a\u8868\u4e2d\u4fdd\u5b58\u7684\u6b4c\u66f2\u4fe1\u606f\uff0c\u53ef\u4ee5\u8282\u7701\u5b58\u50a8\u7a7a\u95f4\uff0c\u9700\u8981\u5b8c\u6574\u4fe1\u606f\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u901a\u8fc7<code>merge<\/code>\u62fc\u63a5\u6570\u636e<\/li>\n<li>\u6211\u4eec\u53ef\u4ee5\u628a<code>year,artist,track,time,date.entered<\/code>\u653e\u5165\u4e00\u4e2a\u65b0\u7684dataframe\u4e2d<\/li>\n<li>\u76f8\u5f53\u4e8e\u6570\u636e\u5e93\u4e2d\u7684\u5de6\/\u53f3\u8868<\/li>\n<\/ul>\n<pre><code class=\"language-python\"># \u51cf\u5c11\u91cd\u590d\nbillboard_songs = billboard_long[[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;]].drop_duplicates()\nprint(billboard_songs)\n<\/code><\/pre>\n<p>\u6dfb\u52a0id\u5217<\/p>\n<pre><code class=\"language-python\"># \u4e3a\u4e0a\u8ff0\u8868\u6dfb\u52a0\u5217\nbillboard_songs[&#039;id&#039;] = round(len(billboard_songs))\n<\/code><\/pre>\n<p>\u5c06id\u5217\u5173\u8054\u5230\u539f\u59cb\u6570\u636e\uff0c\u5f97\u5230\u5305\u542bid\u7684\u5b8c\u6574\u6570\u636e,\u5e76\u4ece\u5b8c\u6574\u6570\u636e\u4e2d\uff0c\u53d6\u51fa\u6bcf\u5468\u8bc4\u5206\u90e8\u5206\uff0c\u53bb\u6389\u5197\u4f59\u4fe1\u606f<\/p>\n<pre><code class=\"language-python\">billboard_ratings = billboard_long.merge(billboard_songs, on=[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;])\nprint(billboard_ratings)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">       year            artist                    track  ...  week rating   id\n0      2000             2 Pac  Baby Don&#039;t Cry (Keep...  ...   wk1   87.0  317\n1      2000           2Ge+her  The Hardest Part Of ...  ...   wk1   91.0  317\n2      2000      3 Doors Down               Kryptonite  ...   wk1   81.0  317\n3      2000      3 Doors Down                    Loser  ...   wk1   76.0  317\n4      2000          504 Boyz            Wobble Wobble  ...   wk1   57.0  317\n...     ...               ...                      ...  ...   ...    ...  ...\n24087  2000       Yankee Grey     Another Nine Minutes  ...  wk76    NaN  317\n24088  2000  Yearwood, Trisha          Real Live Woman  ...  wk76    NaN  317\n24089  2000   Ying Yang Twins  Whistle While You Tw...  ...  wk76    NaN  317\n24090  2000     Zombie Nation            Kernkraft 400  ...  wk76    NaN  317\n24091  2000   matchbox twenty                     Bent  ...  wk76    NaN  317\n\n[24092 rows x 8 columns]\n<\/code><\/pre>\n<\/blockquote>\n<pre><code class=\"language-python\">billboard_ratings = billboard_ratings[[&#039;id&#039;,&#039;week&#039;,&#039;rating&#039;]]\nprint(billboard_ratings)\n<\/code><\/pre>\n<blockquote>\n<p><strong>\u7ed3\u679c<\/strong><\/p>\n<pre><code class=\"language-python\">        id  week  rating\n0      317   wk1    87.0\n1      317   wk1    91.0\n2      317   wk1    81.0\n3      317   wk1    76.0\n4      317   wk1    57.0\n...    ...   ...     ...\n24087  317  wk76     NaN\n24088  317  wk76     NaN\n24089  317  wk76     NaN\n24090  317  wk76     NaN\n24091  317  wk76     NaN\n\n[24092 rows x 3 columns]\n<\/code><\/pre>\n<\/blockquote>\n<h4>\u5b8c\u6574\u4ee3\u7801<\/h4>\n<pre><code class=\"language-python\">import pandas as pd\n\ndf = pd.read_csv(&#039;billboard.csv&#039;)\n\nbillboard_long = pd.melt(df, id_vars=[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;],var_name=&#039;week&#039;,value_name=&#039;rating&#039;)\nprint(billboard_long)\n\n# \u67e5\u627e\u6b4c\u66f2\u4e3aLoser\u7684\u6240\u6709\u884c\nprint(billboard_long[billboard_long[&#039;track&#039;] == &#039;Loser&#039;])\n\n# \u51cf\u5c11\u91cd\u590d\nbillboard_songs = billboard_long[[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;]].drop_duplicates()\n# \u4e3a\u4e0a\u8ff0\u8868\u6dfb\u52a0\u5217\nbillboard_songs[&#039;id&#039;] = range(len(billboard_songs))\nprint(billboard_songs)\n\n# \u5c06id\u5217\u5173\u8054\u5230\u539f\u59cb\u6570\u636e\uff0c\u5f97\u5230\u5305\u542bid\u7684\u5b8c\u6574\u6570\u636e,\u5e76\u4ece\u5b8c\u6574\u6570\u636e\u4e2d\uff0c\u53d6\u51fa\u6bcf\u5468\u8bc4\u5206\u90e8\u5206\uff0c\u53bb\u6389\u5197\u4f59\u4fe1\u606f\nbillboard_ratings = billboard_long.merge(billboard_songs, on=[&#039;year&#039;,&#039;artist&#039;,&#039;track&#039;,&#039;time&#039;,&#039;date.entered&#039;])\nprint(billboard_ratings)\nbillboard_ratings = billboard_ratings[[&#039;id&#039;,&#039;week&#039;,&#039;rating&#039;]]\nprint(billboard_ratings)\n\n# \u5408\u5e76\u8868\nbillboard = billboard_songs.merge(billboard_ratings, on=&#039;id&#039;,how=&#039;left&#039;)\nprint(billboard)\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u914d\u5957\u89c6\u9891\uff1a\u6570\u636e\u6e05\u6d17 PDF\u4e0b\u8f7d\u5730\u5740\uff1a\u6570\u636e\u5206\u6790PDF \u4e00\u3001Python\u6570\u636e\u5206\u6790\u7b80\u4ecb 1.\u5e38\u7528Python\u6570\u636e\u5206\u6790 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":190,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[26,25,24,12],"class_list":["post-252","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-matplotlib","tag-numpy","tag-pandas","tag-python"],"_links":{"self":[{"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/posts\/252","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/comments?post=252"}],"version-history":[{"count":2,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/posts\/252\/revisions"}],"predecessor-version":[{"id":254,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/posts\/252\/revisions\/254"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/media\/190"}],"wp:attachment":[{"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/media?parent=252"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/categories?post=252"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.huihuia24.top\/index.php\/wp-json\/wp\/v2\/tags?post=252"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}