{"@attributes":{"version":"2.0"},"channel":{"title":"Li's Bioinfo-Blog","link":"https:\/\/lishensuo.github.io\/en\/","description":"Recent content on Li's Bioinfo-Blog","generator":"Hugo -- gohugo.io","language":"en","lastBuildDate":"Tue, 31 Mar 2026 00:00:00 +0000","item":[{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u7edf\u8ba1\u63cf\u8ff0\u6307\u6807\u4e0e\u5e38\u89c1\u7edf\u8ba1\u5206\u5e03","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/001-statistical-description-distributions\/","pubDate":"Mon, 18 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/001-statistical-description-distributions\/","description":"<blockquote>\n<p>\u7edf\u8ba1\u7684\u5bf9\u8c61\u662f<strong>\u6570\u636e<\/strong>\uff0c\u5176\u4e2d\u4f1a\u6d89\u53ca\u5230\u4e0d\u540c\u7c7b\u578b\u7684\u6570\u636e\uff1b\u7edf\u8ba1\u7684\u76ee\u7684\u662f<strong>\u63cf\u8ff0<\/strong>\uff0c\u63cf\u8ff0\u4e00\u7ec4\u6570\u636e\u7684\u5206\u5e03\u7279\u5f81\u3001\u4e24\u7ec4\u81f3\u591a\u7ec4\u6570\u636e\u4e4b\u95f4\u7684\u5173\u7cfb\u3002<\/p><\/blockquote>\n<h1 id=\"1\u6570\u636e\u5206\u7c7b\">1\u3001\u6570\u636e\u5206\u7c7b<\/h1>\n<p>\u6839\u636e\u6570\u636e\u7279\u70b9\uff0c\u53ef\u4ee5\u5206\u4e3a2\u5927\u7c7b\uff1a<\/p>"},{"title":"Python\u57fa\u7840-(1)\u521d\u8bc6","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/001-python-intro\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/001-python-intro\/","description":"<h4 id=\"print\u6253\u5370\">print()\u6253\u5370<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Hello, world!&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6253\u5370\u591a\u4e2a\u5b57\u7b26\u4e32\uff0c\u9ed8\u8ba4\u7528\u7a7a\u683c\u94fe\u63a5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;A&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;B&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;C&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;A&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;B&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;C&#34;<\/span>,sep=<span style=\"color:#0ff;font-weight:bold\">&#34;,&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#`+`\u53ef\u76f4\u63a5\u62fc\u63a5\u5b57\u7b26\u4e32<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;A&#34;<\/span>+<span style=\"color:#0ff;font-weight:bold\">&#34;B&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;C&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#AB C<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"input\u53d6\u7528\u6237\u8f93\u5165\">input()\u53d6\u7528\u6237\u8f93\u5165<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = <span style=\"color:#fff;font-weight:bold\">int<\/span>(<span style=\"color:#fff;font-weight:bold\">input<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;\u8bf7\u8f93\u5165x\uff1a&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"\u5173\u4e8epython\u811a\u672c\u7a0b\u5e8f\">\u5173\u4e8epython\u811a\u672c\u7a0b\u5e8f<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u65b9\u5f0f\u4e00\uff1a\u4f7f\u7528shell\u7684python\u547d\u4ee4\u663e\u793a\u8fd0\u884cpython\u811a\u672c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>python  hello.py\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u65b9\u5f0f\u4e8c\uff1a\u5728python\u811a\u672c\u9996\u884c\u6307\u5b9apython\u89e3\u91ca\u5668\uff0c\u5982\u4e0b\u6240\u793a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#!\/usr\/bin\/env python<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7136\u540e\u53ef\u6267\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>chmod a+x hello.py\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u76f4\u63a5\u8fd0\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>.\/hello.py \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"\u5173\u4e8e\u53cd\u659c\u6760\">\u5173\u4e8e\u53cd\u659c\u6760<code>\\<\/code><\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### (1) \u8f6c\u4e49\u7b26<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;Let<\/span><span style=\"color:#0ff;font-weight:bold\">\\&#39;<\/span><span style=\"color:#0ff;font-weight:bold\">s, go&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Let&#39;s, go&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### (2) \u8f6c\u4e49\u8f6c\u4e49\u7b26:\u5c06\u8f6c\u4e49\u7b26\u5f53\u4f5c\u666e\u901a\u7684\u8f6c\u659c\u6760\u5b57\u7b26<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \\n \u8868\u793a\u6362\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Hello, <\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">world&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5c06 `\\n`\u5f53\u4f5c\u666e\u901a\u5b57\u7b26\u6253\u5370<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">r<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;Hello, \\nworld&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### (3) \u5b57\u7b26\u4e32\/\u8868\u8fbe\u5f0f\/\u8bed\u53e5\u6362\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Hello, <\/span><span style=\"color:#0ff;font-weight:bold\">\\\n<\/span><\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\"><\/span><span style=\"color:#0ff;font-weight:bold\">world!&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span> \\\n<\/span><\/span><span style=\"display:flex;\"><span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Hello, world!&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"\u8d4b\u503c\u8bed\u53e5\u4e0e\u5e8f\u5217\u89e3\u5305\">\u8d4b\u503c\u8bed\u53e5\u4e0e\u5e8f\u5217\u89e3\u5305<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7b80\u5355\u7528\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = <span style=\"color:#ff0;font-weight:bold\">1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5e8f\u5217\u89e3\u5305<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x, y, z = <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u5176\u5b9e\u4e0a\u9762\u8868\u8fbe\u5f0f\u53f3\u8fb9\u672c\u8d28\u662f\u4e00\u4e2a\u5143\u7ec4\u5e8f\u5217<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x,y,z)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x, y, z = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x,y,z)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4e00\u822c\u6765\u8bf4\u5de6\u53f3\u4e24\u8fb9\u7684\u5143\u7d20\u6570\u8981\u76f8\u540c\uff0c\u4f46\u53ef\u4ee5\u4f7f\u7528\u661f\u53f7\u8fd0\u7b97\u7b26\u6536\u96c6\u591a\u4f59\u7684\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x, y, *z = <span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x, y)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 1 2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x, *y, z = <span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x, y, z)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 1 [2, 3, 4] 5<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u4ee5T\u68c0\u9a8c\u4e3a\u4f8b\u5b66\u4e60\u57fa\u4e8e\u4e2d\u5fc3\u6781\u9650\u5b9a\u7406\u7684\u5047\u8bbe\u68c0\u9a8c","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/002-t-test-hypothesis\/","pubDate":"Tue, 10 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/002-t-test-hypothesis\/","description":"<p>\u7edf\u8ba1\u5b66\u5e38\u7528\u6837\u672c\u6570\u636e\u63a8\u65ad\u603b\u4f53\u7ed3\u679c\uff0c\u6216\u8005\u8bf4\u4f7f\u7528<strong>\u6837\u672c\u7edf\u8ba1\u91cf<\/strong>\u63a8\u65ad\u603b\u4f53\u53c2\u6570\u3002\u5305\u542b\u5982\u4e0b\u610f\u4e49\uff1a<\/p>\n<p>\uff081\uff09\u5bf9\u4e8e<strong>\u6837\u672c\u6570\u636e<\/strong>\uff0c\u6839\u636e\u95ee\u9898\u7684\u4e0d\u540c\uff0c\u4f1a\u6709\u4e0d\u540c\u7684\u5f62\u5f0f\u3002\u4f8b\u5982\u5355\u7eaf\u63cf\u8ff0\u4e00\u7ec4\u7684\u6570\u636e\u5206\u5e03\uff0c\u90a3\u4e48\u5c31\u662f\u539f\u59cb\u6536\u96c6\u6570\u636e\uff1b\u5982\u679c\u63cf\u8ff0\u4e24\u7ec4\u5dee\u5f02\uff0c\u90a3\u4e48<strong>\u5dee\u503c\u624d\u662f\u6837\u672c\u6570\u636e<\/strong>\uff0c\u800c\u6b64\u65f6\u76ee\u7684\u5c31\u662f\u7814\u7a76\u603b\u4f53\u5dee\u503c\u7684\u5206\u5e03\u3002<\/p>"},{"title":"conda\u73af\u5883\u4e0b\u8f7d\u7ba1\u7406\u8f6f\u4ef6\u3001R\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/002-conda-package-manager\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/002-conda-package-manager\/","description":"<blockquote>\n<p>conda\u5f00\u6e90\u5305\u7ba1\u7406\u7cfb\u7edf\u548c\u73af\u5883\u7ba1\u7406\u7cfb\u7edf \uff0c\u5305\u62ec\u591a\u79cd\u8bed\u8a00\u7684\u5305\u5b89\u88c5\uff0c\u8fd0\u884c\uff0c\u66f4\u65b0\uff0c\u5220\u9664\uff0c\u6700\u91cd\u8981\u7684\u662f\u53ef\u4ee5\u89e3\u51b3\u5305\u4f9d\u8d56\u95ee\u9898\u3002\u5728\u505a\u751f\u4fe1\u5206\u6790\u65f6\uff0c\u611f\u89c9\u5c31\u662f\u4e00\u4e2a\u8f6f\u4ef6\u7ba1\u5bb6\u4e00\u6837\u7684\u5b58\u5728\uff0c\u5728\u5b89\u88c5\u751f\u4fe1\u8f6f\u4ef6\u7b49\u65b9\u9762\u4e0a\u5341\u5206\u65b9\u4fbf\u3002\u4e0b\u9762\u5c0f\u7ed3\u4e00\u4e0bconda\u7684\u57fa\u7840\u64cd\u4f5c<\/p>"},{"title":"Python\u57fa\u7840-(2)\u5217\u8868\u3001\u5143\u7ec4\u3001\u5b57\u7b26\u4e32\u3001\u5b57\u5178","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/002-python-data-structures\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/002-python-data-structures\/","description":"<h2 id=\"\u5173\u4e8e\u5e8f\u5217\">\u5173\u4e8e\u5e8f\u5217<\/h2>\n<ul>\n<li>\u5e8f\u5217\uff1a\u6709\u987a\u5e8f\u7684\u5143\u7d20\u6392\u5217\uff1b\u7b2c\u4e00\u4e2a\u5143\u7d20\u7684\u7d22\u5f15\u4e3a0<\/li>\n<li>\u5217\u8868list\uff0c\u5143\u7ec4tuple\uff0c\u5b57\u7b26\u4e32str\u90fd\u5c5e\u4e8e\u5e8f\u5217\uff1b\u4f46\u4e00\u822c\u60c5\u51b5\u4e0b\uff0c\u53ea\u6709list\u53ef\u4fee\u6539\uff0c\u540e\u4e8c\u8005\u4e0d\u53ef\u4fee\u6539<\/li>\n<\/ul>\n<h2 id=\"\u4e00\u5e8f\u5217\u901a\u7528\u64cd\u4f5c\">\u4e00\u3001\u5e8f\u5217\u901a\u7528\u64cd\u4f5c<\/h2>\n<h4 id=\"1\u7d22\u5f15\u8bbf\u95ee\u5143\u7d20\u91cc\u7684\u5355\u4e2a\u5143\u7d20\">1\u3001\u7d22\u5f15&ndash;\u8bbf\u95ee\u5143\u7d20\u91cc\u7684\u5355\u4e2a\u5143\u7d20<\/h4>\n<ul>\n<li>indexing<\/li>\n<li>\u7b2c\u4e00\u4e2a\u5143\u7d20\u7684\u7d22\u5f15\u4e3a<code>0<\/code>\uff1b<\/li>\n<li>\u5012\u6570\u7b2cn\u4e2a\u5143\u7d20\u7684\u7d22\u5f15\u4e3a<code>-n<\/code><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>greet = <span style=\"color:#0ff;font-weight:bold\">&#39;Hello&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>greet[<span style=\"color:#ff0;font-weight:bold\">0<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>greet[-<span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\">&#39;Hello&#39;<\/span>[<span style=\"color:#ff0;font-weight:bold\">0<\/span>]\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"2\u5207\u7247\u8bbf\u95ee\u67d0\u4e2a\u8303\u56f4\u7684\u591a\u4e2a\u5143\u7d20\">2\u3001\u5207\u7247&ndash;\u8bbf\u95ee\u67d0\u4e2a\u8303\u56f4\u7684\u591a\u4e2a\u5143\u7d20<\/h4>\n<ul>\n<li>slicing<\/li>\n<li>\u9700\u8981\u63d0\u4f9b\u4e24\u4e2a\u7d22\u5f15\u6307\u5b9a\u8303\u56f4\u7684\u8fb9\u754c\u3002<\/li>\n<li>\u7b2c\u4e00\u4e2a\u7d22\u5f15\u662f\u8d77\u59cb\u70b9\u7684\u7f16\u53f7\uff0c\u7b2c\u4e8c\u4e2a\u7d22\u5f15\u662f\u8fb9\u754c\u7ec8\u70b9\u7684\u7f16\u53f7**+1**<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>,<span style=\"color:#ff0;font-weight:bold\">7<\/span>,<span style=\"color:#ff0;font-weight:bold\">8<\/span>,<span style=\"color:#ff0;font-weight:bold\">9<\/span>,<span style=\"color:#ff0;font-weight:bold\">10<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [2, 3]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers[-<span style=\"color:#ff0;font-weight:bold\">5<\/span>:-<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [6, 7]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers[<span style=\"color:#ff0;font-weight:bold\">3<\/span>:] \n<\/span><\/span><span style=\"display:flex;\"><span>numbers[:<span style=\"color:#ff0;font-weight:bold\">9<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers[:]\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"3\u5e8f\u5217\u76f8\u52a0\u76f8\u4e58\">3\u3001\u5e8f\u5217\u76f8\u52a0\/\u76f8\u4e58<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5e8f\u5217\u76f8\u52a0\uff08\u8fde\u63a5\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>[<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>] + [<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5e8f\u5217\u76f8\u4e58<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\">&#39;hello&#39;<\/span> * <span style=\"color:#ff0;font-weight:bold\">3<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"4\u786e\u8ba4\u662f\u5426\u5305\u542b\u67d0\u5143\u7d20\">4\u3001\u786e\u8ba4\u662f\u5426\u5305\u542b\u67d0\u5143\u7d20<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\">&#39;A&#39;<\/span> in <span style=\"color:#0ff;font-weight:bold\">&#39;ABC&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\">&#39;li&#39;<\/span> in [<span style=\"color:#0ff;font-weight:bold\">&#39;li&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;wang&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;zhou&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"5\u8865\u5145\u5173\u4e8eset\u96c6\u5408\">5\u3001\u8865\u5145\uff1a\u5173\u4e8eset\u96c6\u5408<\/h4>\n<ul>\n<li>\u96c6\u5408set\u5185\u6ca1\u6709\u91cd\u590d\u5143\u7d20\uff0c\u4e14\u6ca1\u6709\u987a\u5e8f\uff0c\u6240\u4ee5\u672c\u8d28\u4e0a\u4e0d\u5c5e\u4e8e\u5e8f\u5217\uff1b<\/li>\n<li>\u53ef\u4f7f\u7528<code>set()<\/code>\u51fd\u6570\u521b\u5efa\u96c6\u5408\uff0c\u6216\u8005\u4f7f\u7528<code>{}<\/code>\u521b\u5efa\uff1b<\/li>\n<li>\u4e3b\u8981\u7528\u4e8e\u6210\u5458\u8d44\u683c\u68c0\u67e5\uff08\u7c7b\u4f3c\u4e0a\u9762\u7684\u7b2c4\u70b9\uff09\uff0c\u4ee5\u53ca\u96c6\u5408\u7684\u4ea4\u3001\u5e76\u3001\u8865\u7b49\u64cd\u4f5c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u521b\u5efa\u96c6\u5408<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">set<\/span>(<span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">5<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {0, 1, 2, 3, 4}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>{<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">9<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {0, 1, 4, 6, 9}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u6210\u5458\u8d44\u683c\u68c0\u67e5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#ff0;font-weight:bold\">0<\/span> in {<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">9<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u96c6\u5408\u64cd\u4f5c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a = {<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>b = {<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>c = {<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(1)\u4ea4\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a.intersection(b) <span style=\"color:#007f7f\"># \u901a\u8fc7\u51fd\u6570\u8c03\u7528\uff0cb\u53ef\u4ee5\u662flist\u7b49\u53ef\u8fed\u4ee3\u5bf9\u8c61 \uff08\u4e0b\u540c\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a &amp; b             <span style=\"color:#007f7f\"># \u901a\u8fc7\u7b26\u53f7\u8c03\u7528\uff0cb\u5fc5\u987b\u662fset\u5bf9\u8c61 \uff08\u4e0b\u540c\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {1, 2}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(2)\u662f\u5426\u5b50\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>c.issubset(a)\n<\/span><\/span><span style=\"display:flex;\"><span>c &lt;= a\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(3)\u5dee\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a.difference(b)\n<\/span><\/span><span style=\"display:flex;\"><span>a-b\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {3}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(4)\u5168\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a.union(b)\n<\/span><\/span><span style=\"display:flex;\"><span>a | b\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {1, 2, 3, 4}<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"\u4e8c\u5217\u8868\u7684\u7279\u6709\u64cd\u4f5c\">\u4e8c\u3001\u5217\u8868\u7684\u7279\u6709\u64cd\u4f5c<\/h2>\n<h4 id=\"1\u5229\u7528\u7d22\u5f15\u4e0e\u5207\u7247\u76f4\u63a5\u4fee\u6539\u5217\u8868\">1\u3001\u5229\u7528\u7d22\u5f15\u4e0e\u5207\u7247\u76f4\u63a5\u4fee\u6539\u5217\u8868<\/h4>\n<ul>\n<li>\u7d22\u5f15<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>x[<span style=\"color:#ff0;font-weight:bold\">1<\/span>] = <span style=\"color:#ff0;font-weight:bold\">1<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u5207\u7247<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7531\u4e8e\u5b57\u7b26\u4e32\u4e0d\u80fd\u4fee\u6539\uff0c\u9700\u8981\u5148\u5c06\u5b57\u7b26\u4e32\u8f6c\u4e3a\u5217\u8868<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>names = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;python&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>names[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>] = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;YT&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7531\u4e8e\u8d4b\u503c\u7684\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\u53ef\u4ee5\u4e0e\u88ab\u4fee\u6539\u7684\u5b57\u7b26\u4e32\u957f\u5ea6\u4e0d\u540c\uff0c\u6240\u4ee5\u53ef\u4ee5\u5f15\u7533\u7528\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u53d8\u76f8\u7684\u63d2\u5165<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>names = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;python&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>names[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">1<\/span>] = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;AAA&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u53d8\u76f8\u7684\u5220\u9664<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>names = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;python&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>names[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>] = []\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"2\u5217\u8868\u7684\u65b9\u6cd5\u589e\u5220\u6539\u67e5\">2\u3001\u5217\u8868\u7684\u65b9\u6cd5&ndash;\u589e\u5220\u6539\u67e5<\/h4>\n<ul>\n<li>\u589e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) append: \u589e\u52a0\u5143\u7d20\u5230\u672b\u5c3e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.append(<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u65e0\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) extend: \u589e\u52a0\u5217\u8868\u91cc\u7684\u5143\u7d20\u5230\u672b\u5c3e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.extend([<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u65e0\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (3) insert: \u5728\u6307\u5b9a\u7d22\u5f15\u4f4d\u7f6e\u63d2\u5165\u5143\u7d20<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.insert(<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;four&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1, 2, &#39;four&#39;, 3]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u65e0\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u5220<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) pop: \u5220\u9664\u6700\u540e\u4e00\u4e2a\u5143\u7d20<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.pop()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u5e76\u8fd4\u56de\u88ab\u5220\u9664\u7684\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) remove: \u5220\u9664\u6307\u5b9a\u5143\u7d20\u7684\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.remove(<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [2, 3]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u65e0\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5173\u4e8elist\u5217\u8868\u7684\u5220\u9664\u64cd\u4f5c\uff0c\u6709\u4e00\u4e2a\u51fd\u6570`del`\u652f\u6301\u6839\u636e\u7d22\u5f15\u5220\u9664\u5143\u7d20<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">del<\/span> numbers[<span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1, 3]<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u6539<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) reverse: \u9006\u8f6c\u5f53\u524d\u5217\u8868\u5143\u7d20\u7684\u987a\u5e8f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.reverse()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u539f\u5730\u4fee\u6539\uff0c\u65e0\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) sort: \u987a\u5e8f\u6392\u5217\u5f53\u524d\u5217\u8868\u7684\u5143\u7d20, \u9ed8\u8ba4\u5347\u5e8f\u6392\u5217<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.sort()\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.sort(reverse=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u67e5<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) count: \u67e5\u770b\u67d0\u4e00\u5143\u7d20\u7684\u9891\u7387<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.count(<span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) index: \u67e5\u770b\u67d0\u4e00\u5143\u7d20\u503c\u7684\u7d22\u5f15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>numbers.index(<span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"3filter\u642d\u914dlamda\u5217\u8868\u7b5b\u9009\">3\u3001filter()\u642d\u914dlamda\u5217\u8868\u7b5b\u9009<\/h4>\n<p><code>filter()<\/code>\u51fd\u6570\u5305\u542b\u5982\u4e0b\u4e24\u4e2a\u53c2\u6570<\/p>"},{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u65b9\u5dee\u5206\u6790\u4e0e\u5361\u65b9\u68c0\u9a8c","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/003-anova-chi-square\/","pubDate":"Fri, 13 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/003-anova-chi-square\/","description":"<p>\u65b9\u5dee\u5206\u6790(analysis of variance)\u53ef\u4ee5\u7b80\u5355\u7684\u7406\u89e3\u4e3a\u591a\u7ec4\u95f4\u7684\u5747\u503c\u6bd4\u8f83\u3002\u4f8b\u5982A\u73ed\u3001B\u73ed\u3001C\u73ed\u3001D\u73ed\u7684\u8003\u8bd5\u6210\u7ee9\u5747\u503c\u662f\u5426\u5b58\u5728\u663e\u8457\u5dee\u5f02\u3002\u65b9\u5dee\u5206\u6790\u662f\u57fa\u4e8eF\u5206\u5e03\u7684\u5047\u8bbe\u68c0\u9a8c\uff0c\u6240\u4ee5\u53c8\u79f0F\u68c0\u9a8c<\/p>"},{"title":"Python\u57fa\u7840-(3)\u6761\u4ef6\u4e0e\u5faa\u73af\u8bed\u53e5","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/003-python-conditions-loops\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/003-python-conditions-loops\/","description":"<h2 id=\"\u4e00\u6761\u4ef6\u8bed\u53e5\">\u4e00\u3001\u6761\u4ef6\u8bed\u53e5<\/h2>\n<h4 id=\"1\u5e03\u5c14\u503c\">1\u3001\u5e03\u5c14\u503c<\/h4>\n<ul>\n<li>\u5728python\u4e2d\uff0c\u8fd9\u4e9b\u503c\u5747\u4e3a\u89c6\u4e3a<strong>\u5047<\/strong>\uff1a<code>False<\/code>, <code>None<\/code>, <code>0<\/code>, <code>''<\/code>,<code>()<\/code>, <code>[]<\/code>, <code>{}<\/code>\u3002\u5176\u4f59\u6240\u6709\u53ef\u80fd\u7684\u503c\u90fd\u89c6\u4e3a<strong>\u771f<\/strong><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">bool<\/span>(<span style=\"color:#fff;font-weight:bold\">None<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># False<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">bool<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># False<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">bool<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;anything&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"2if\u8bed\u53e5\u7ed3\u6784\">2\u3001if\u8bed\u53e5\u7ed3\u6784<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>thisnum = <span style=\"color:#ff0;font-weight:bold\">6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5c42\u7ea71<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> thisnum &gt; <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is positive.&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5c42\u7ea72<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> thisnum &gt; <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is positive.&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">else<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is negative.&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5c42\u7ea73<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> thisnum &gt; <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is positive.&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">elif<\/span> thisnum == <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is zero.&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">else<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This number is negative.&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"3\u8fd0\u7b97\u7b26\">3\u3001\u8fd0\u7b97\u7b26<\/h4>\n<ul>\n<li><code>and<\/code>, <code>or<\/code>, <code>not<\/code><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>thisnum = <span style=\"color:#ff0;font-weight:bold\">5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> thisnum &lt;= <span style=\"color:#ff0;font-weight:bold\">9<\/span> and thisnum &gt; <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This is a natural number&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4e5f\u53ef\u4ee5\u4f7f\u7528\u94fe\u5f0f\u6bd4\u8f83<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#ff0;font-weight:bold\">0<\/span> &lt; thisnum &lt;= <span style=\"color:#ff0;font-weight:bold\">9<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;This is a natural number&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"\u4e8cfor\u5faa\u73af\u8bed\u53e5\">\u4e8c\u3001for\u5faa\u73af\u8bed\u53e5<\/h2>\n<h4 id=\"1for\u8bed\u53e5\u7ed3\u6784\">1\u3001for\u8bed\u53e5\u7ed3\u6784<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>numebrs = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7b49\u4ef7\u4e8e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = <span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">7<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> number in <span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">7<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(number)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"2\u8fed\u4ee3\u65b9\u6cd5\">2\u3001\u8fed\u4ee3\u65b9\u6cd5<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(1)\u8fed\u4ee3\u5b57\u5178<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>d = {<span style=\"color:#0ff;font-weight:bold\">&#39;x&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;y&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;z&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u8fed\u4ee3\u5b57\u5178\u7684\u952e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> key in d:\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(key, <span style=\"color:#0ff;font-weight:bold\">&#39;value is&#39;<\/span>, d[key])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u8fed\u4ee3\u5b57\u5178\u7684\u6bcf\u4e00\u9879<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> key, value in d.items():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(key, <span style=\"color:#0ff;font-weight:bold\">&#39;value is&#39;<\/span>, value)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(2) zip()\u53ef\u7f1d\u5408\u591a\u4e2a\u7b49\u957f\u5e8f\u5217\uff0c\u7528\u4e8e\u8fed\u4ee3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>name=[<span style=\"color:#0ff;font-weight:bold\">&#39;AA&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;BB&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;CC&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>age=[<span style=\"color:#ff0;font-weight:bold\">12<\/span>,<span style=\"color:#ff0;font-weight:bold\">15<\/span>,<span style=\"color:#ff0;font-weight:bold\">11<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">list<\/span>(<span style=\"color:#fff;font-weight:bold\">zip<\/span>(name, age))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## [(&#39;AA&#39;, 12), (&#39;BB&#39;, 15), (&#39;CC&#39;, 11)]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> name,age in <span style=\"color:#fff;font-weight:bold\">zip<\/span>(name, age):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(name, <span style=\"color:#0ff;font-weight:bold\">&#39;is&#39;<\/span>, age, <span style=\"color:#0ff;font-weight:bold\">&#39;years old&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(3) enumerate()\u540c\u65f6\u8fed\u4ee3\u7d22\u5f15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>strs = [<span style=\"color:#0ff;font-weight:bold\">&#39;A&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;B&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;C&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> index, st in <span style=\"color:#fff;font-weight:bold\">enumerate<\/span>(strs):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(index, st)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 0 A<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 1 B<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 2 C<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"3breakcontinue\">3\u3001break\/continue<\/h4>\n<ul>\n<li>break\uff1a\u7ed3\u675f\u5faa\u73af<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> math <span style=\"color:#fff;font-weight:bold\">import<\/span> sqrt\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> n in <span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">99<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>,-<span style=\"color:#ff0;font-weight:bold\">1<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>    root = sqrt(n) <span style=\"color:#007f7f\">#\u5e73\u65b9\u6839<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> root == <span style=\"color:#fff;font-weight:bold\">int<\/span>(root):\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">print<\/span>(n)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">break<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>continue\uff1a\u8df3\u8fc7\u5f53\u524d\u5faa\u73af<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6253\u5370\u5947\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> i in <span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">9<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> i%<span style=\"color:#ff0;font-weight:bold\">2<\/span>==<span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">continue<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(i)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"4for\u8bed\u53e5\u521b\u5efa\u5217\u8868\">4\u3001for\u8bed\u53e5\u521b\u5efa\u5217\u8868<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>[x*x <span style=\"color:#fff;font-weight:bold\">for<\/span> x in <span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">5<\/span>)]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [0, 1, 4, 9, 16]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u7b5b\u9009\u7b26\u5408\u6761\u4ef6\u7684\u53d8\u91cfx<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>[x*x <span style=\"color:#fff;font-weight:bold\">for<\/span> x in <span style=\"color:#fff;font-weight:bold\">range<\/span>(<span style=\"color:#ff0;font-weight:bold\">5<\/span>) <span style=\"color:#fff;font-weight:bold\">if<\/span> x%<span style=\"color:#ff0;font-weight:bold\">2<\/span>==<span style=\"color:#ff0;font-weight:bold\">0<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [0, 4, 16]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u7ec4\u5408\u4e24\u4e2a\u5217\u8868\uff0c\u4e0d\u540c\u4e8ezip()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>As = [<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>Bs = [<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;b&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>[(x, y) <span style=\"color:#fff;font-weight:bold\">for<\/span> x in As <span style=\"color:#fff;font-weight:bold\">for<\/span> y in Bs]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [(1, &#39;a&#39;), (1, &#39;b&#39;), (2, &#39;a&#39;), (2, &#39;b&#39;)]<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"\u4e09\u5176\u5b83\u8bed\u53e5\">\u4e09\u3001\u5176\u5b83\u8bed\u53e5<\/h2>\n<ul>\n<li>\n<p><code>pass<\/code> \u5360\u4f4d\u7b26\uff0c\u4ec0\u4e48\u90fd\u4e0d\u505a\uff1b<\/p>"},{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u76f8\u5173\u6027\u4e0e\u4e00\u81f4\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/004-correlation-consistency\/","pubDate":"Thu, 02 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/004-correlation-consistency\/","description":"<h1 id=\"\u4e00\u76f8\u5173\u6027\">\u4e00\u3001\u76f8\u5173\u6027<\/h1>\n<h2 id=\"1\u7ebf\u6027\u76f8\u5173\u7cfb\u6570\">1\u3001\u7ebf\u6027\u76f8\u5173\u7cfb\u6570<\/h2>\n<p>\uff081\uff09\u7ebf\u6027\u76f8\u5173\u7cfb\u6570\u7528\u4e8e\u63cf\u8ff0\u591a\u4e2a\u6837\u672c\u6570\u636e\u4e2d\u4e24\u4e2a\u53d8\u91cf\u4e4b\u95f4\u7684\u7ebf\u6027\u76f8\u5173\u7684\u7a0b\u5ea6\u3002<\/p>\n<ul>\n<li>\u53d8\u91cf\u901a\u5e38\u4e3a\u8fde\u7eed\u578b\u53d8\u91cf\uff1b<\/li>\n<li>\u4e24\u4e2a\u53d8\u91cf\u4e00\u822c\u4e3a\u63cf\u8ff0\u6837\u672c\u7684\u4e0d\u540c\u6307\u6807\uff0c\u4f8b\u5982\u4eba\u7fa4\u7684\u4f53\u91cd\u503c\u4e0e\u8840\u7cd6\u503c<\/li>\n<\/ul>\n<p>\uff082\uff09\u534f\u65b9\u5dee(Corvariance)\uff1a\u7528\u4e8e\u8861\u91cf\u4e24\u4e2a\u968f\u673a\u53d8\u91cf\u7684\u8054\u5408\u53d8\u5316\u7a0b\u5ea6\u3002<\/p>"},{"title":"\u670d\u52a1\u5668\u5916\u7f51\u6587\u4ef6\u4f20\u8f93--\u5976\u725b\u5feb\u4f20\u3001\u963f\u91cc\u4e91\u76d8","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/004-file-transfer-tools\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/004-file-transfer-tools\/","description":"<h1 id=\"1\u5976\u725b\u5feb\u4f20\">1\u3001\u5976\u725b\u5feb\u4f20<\/h1>\n<h3 id=\"1-linux\u670d\u52a1\u5668\u5b89\u88c5\">(1) linux\u670d\u52a1\u5668\u5b89\u88c5<\/h3>\n<ul>\n<li>\n<p><a href=\"https:\/\/github.com\/Mikubill\/cowtransfer-uploader\/releases\">https:\/\/github.com\/Mikubill\/cowtransfer-uploader\/releases<\/a><\/p>\n<\/li>\n<li>\n<p>\u9009\u62e9\u4e00\u4e2a\u6700\u65b0\u7684linux\u7248\u672c\u4e0b\u8f7d\uff08\u5982\u679cwget\u4e0b\u8f7d\u592a\u6162\uff0c\u5c31\u4e0b\u8f7d\u7684\u672c\u5730\u7535\u8111\uff0c\u518d\u4e0a\u4f20\u5230linux\uff09<\/p>\n<\/li>\n<li>\n<p>\u89e3\u538b\u5373\u7528<\/p>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>wget https:\/\/github.com\/Mikubill\/cowtransfer-uploader\/releases\/download\/v0.4.21\/cowtransfer-uploader_0.4.21_linux_amd64.tar.gz\n<\/span><\/span><span style=\"display:flex;\"><span>tar -zxvf cowtransfer-uploader_0.4.21_linux_amd64.tar.gz\n<\/span><\/span><span style=\"display:flex;\"><span>.\/cowtransfer-uploader <span style=\"color:#007f7f\">#\u67e5\u770b\u5e2e\u52a9\u6587\u6863<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2-\u5c06\u672c\u5730\u6587\u4ef6\u4e0a\u4f20\u5230\u670d\u52a1\u5668\">(2) \u5c06\u672c\u5730\u6587\u4ef6\u4e0a\u4f20\u5230\u670d\u52a1\u5668<\/h3>\n<ul>\n<li>\n<p>\u8fdb\u5165https:\/\/cowtransfer.com\/\uff0c\u4e0a\u4f20\u672c\u5730\u6587\u4ef6\uff0c\u83b7\u53d6\u4e0b\u8f7d\u94fe\u63a5<\/p>"},{"title":"Python\u57fa\u7840-(4)\u51fd\u6570Function","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/004-python-functions\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/004-python-functions\/","description":"<h2 id=\"1\u5b9a\u4e49\u51fd\u6570\">1\u3001\u5b9a\u4e49\u51fd\u6570<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># def\u8bed\u53e5\u5b9a\u4e49\u51fd\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> hello(name):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Hello,&#34;<\/span>, name)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6dfb\u52a0return\u8bed\u53e5\u6709\u4e24\u4e2a\u4f5c\u7528<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) \u8868\u793a\u51fd\u6570\u7684\u7ed3\u675f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) \u6307\u5b9a\u51fd\u6570\u7684\u8fd4\u56de\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> square(number):\n<\/span><\/span><span style=\"display:flex;\"><span>    res = number*number\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> res\n<\/span><\/span><span style=\"display:flex;\"><span>square(<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u53ef\u4ee5\u5728\u51fd\u6570\u5f00\u5934\u7f16\u8f91\u4e00\u4e2a\u6587\u6863\u5b57\u7b26\u4e32\uff0c\u7528\u4ee5\u89e3\u91ca\u51fd\u6570\u529f\u80fd\uff0c\u53ef\u4f5c\u4e3a\u51fd\u6570\u7684\u4e00\u90e8\u5206\u50a8\u5b58\u8d77\u6765<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> square(number):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#39;Calaulate the square of the input number&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    res = number*number\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> res\n<\/span><\/span><span style=\"display:flex;\"><span>help(square) <span style=\"color:#007f7f\">#\u53ef\u4ee5\u5728\u5e2e\u52a9\u6587\u6863\u91cc\u627e\u5230\u8fd9\u4e2a\u5b57\u7b26\u4e32<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5b9a\u4e49\u591a\u4e2a\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> hello(time,name):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;Good&#34;<\/span>,time, <span style=\"color:#0ff;font-weight:bold\">&#34;,&#34;<\/span>, name)\n<\/span><\/span><span style=\"display:flex;\"><span>hello(name=<span style=\"color:#0ff;font-weight:bold\">&#34;LI&#34;<\/span>,time=<span style=\"color:#0ff;font-weight:bold\">&#34;morning&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2\u53c2\u6570\u7c7b\u578b\">2\u3001\u53c2\u6570\u7c7b\u578b<\/h2>\n<p>\uff081\uff09\u5728\u5b9a\u4e49\u51fd\u6570\u65f6\uff0c\u53ef\u4ee5\u8bbe\u7f6e\u53c2\u6570\u7684\u9ed8\u8ba4\u503c\u3002\u4f46\u9700\u8981\u6ce8\u610f\u7684\u662f\u8fd9\u7c7b\u53c2\u6570\u9700\u8981\u653e\u5230\u6700\u540e\u3002<\/p>"},{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u4e8c\u5206\u7c7b\u6a21\u578b\u8bc4\u4ef7\u6307\u6807","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/005-binary-metrics\/","pubDate":"Thu, 09 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/005-binary-metrics\/","description":"<h1 id=\"1\u6df7\u6dc6\u77e9\u9635\u76f8\u5173\u6307\u6807\">1\u3001\u6df7\u6dc6\u77e9\u9635\u76f8\u5173\u6307\u6807<\/h1>\n<p>\u5047\u8bbe\u67d0\u533b\u751f\u5bf9100\u4e2a\u6302\u53f7\u7684\u4eba\u8fdb\u884c\u67d0\u75be\u75c5\u7684\u5224\u65ad\uff0c\u5177\u4f53\u60c5\u51b5\u5982\u4e0b<\/p>\n<ul>\n<li>\u524d\u63d0\u5df2\u77e5\u8fd9100\u4eba\u7684\u771f\u5b9e\u60a3\u75c5\u60c5\u51b5\uff1a60\u4eba\u60a3\u75c5\uff0c40\u4eba\u5065\u5eb7<\/li>\n<li>\u533b\u751f\u6839\u636e\u75c7\u72b6\u5224\u65ad(\u9884\u6d4b)\u7ed3\u679c\u4e3a\uff1a80\u4eba\u60a3\u75c5\uff0c20\u4eba\u5065\u5eb7<\/li>\n<\/ul>\n<table>\n  <thead>\n      <tr>\n          <th style=\"text-align: center\"><\/th>\n          <th style=\"text-align: center\">\u771f\u5b9e-\u60a3\u75c5<\/th>\n          <th style=\"text-align: center\">\u771f\u5b9e-\u5065\u5eb7<\/th>\n      <\/tr>\n  <\/thead>\n  <tbody>\n      <tr>\n          <td style=\"text-align: center\"><strong>\u9884\u6d4b-\u60a3\u75c5<\/strong><\/td>\n          <td style=\"text-align: center\">50<\/td>\n          <td style=\"text-align: center\">30<\/td>\n      <\/tr>\n      <tr>\n          <td style=\"text-align: center\"><strong>\u9884\u6d4b-\u5065\u5eb7<\/strong><\/td>\n          <td style=\"text-align: center\">10<\/td>\n          <td style=\"text-align: center\">10<\/td>\n      <\/tr>\n  <\/tbody>\n<\/table>\n<p>\u6839\u636e\u533b\u751f\u7684\u9884\u6d4b\u7ed3\u679c\uff0c\u5c06\u9884\u6d4b\u4e3a\u60a3\u75c5\u5b9a\u4e49\u4e3a<u>\u9633\u6027<\/u>(Positive)\u4e8b\u4ef6\uff1b\u9884\u6d4b\u4e3a\u5065\u5eb7\u72b6\u6001\u4e3a<u>\u9634\u6027<\/u>(Negative)\u4e8b\u4ef6<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--cellranger","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/005-cellranger-alignment\/","pubDate":"Tue, 24 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/005-cellranger-alignment\/","description":"<blockquote>\n<p>\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u6d4b\u5e8f\u6280\u672f\u5386\u7ecf10\u4f59\u5e74\u7684\u53d1\u5c55\uff0c\u76ee\u524d\u4ee5\u9ad8\u901a\u91cf\u7684Droplet\u6280\u672f\u5e7f\u4e3a\u5e94\u7528\u3002\u5176\u4e2d\u4ee510X Genomics\u516c\u53f8\u5f00\u53d1\u7684\u5b9e\u9a8c\u53ca\u5206\u6790\u7cfb\u7edf\u6700\u4e3a\u6d41\u884c\u3002\u5982\u4e0b\u7b80\u5355\u5b66\u4e60\u6d4b\u5e8f\u539f\u7406\u3001\u7ed3\u679c\u4ee5\u53ca\u4e0a\u6e38\u6bd4\u5bf9\u6d41\u7a0b\u3002<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/01-technologies.jpg -->\n<img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/01-technologies.jpg\" alt=\"Tools and techniques for single-cell RNA sequencing data\"  \/>\n<\/p>"},{"title":"Python\u57fa\u7840-(5)\u7c7bClass\u4e0e\u5b9e\u4f8bInstance","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/005-python-classes\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/005-python-classes\/","description":"<ul>\n<li>\n<p>\u9762\u5411\u5bf9\u8c61\u7684\u8bbe\u8ba1\u601d\u60f3\u662f\u62bd\u8c61\u51faClass(\u7c7b)\uff0c\u6839\u636eClass\u521b\u5efaInstance(\u5b9e\u4f8b)\u3002<\/p>\n<\/li>\n<li>\n<p>\u7c7b\u662f\u4e00\u4e2a\u76f8\u5bf9\u62bd\u8c61\u7684\u6982\u5ff5\uff0c\u800c\u5b9e\u4f8b\u662f\u5176\u5177\u4f53\u5316\u3002\u4f8b\u5982\u5c06\u5b66\u751f\u89c6\u4e3a<strong>\u7c7b<\/strong>\uff0c\u90a3\u4e48\u674e\u534e\uff0c\u738b\u4e3d\u7b49\u5177\u4f53\u7684\u5b66\u751f\u5c31\u662f<strong>\u5b9e\u4f8b<\/strong>\u3002<\/p>"},{"title":"\u7edf\u8ba1\u5b66\u57fa\u7840--\u91cd\u62bd\u6837Bootstrap\u4e0e\u7f6e\u6362\u68c0\u9a8cpermutation test","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/006-bootstrap-permutation\/","pubDate":"Sun, 10 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/006-bootstrap-permutation\/","description":"<blockquote>\n<p>\u91cd\u62bd\u6837\u672c\u8d28\u4e0a\u662f\u4ece\u89c2\u6d4b\u6570\u636e\u4e2d\u53cd\u590d\u62bd\u53d6\u6570\u636e\uff0c\u6709\u4e24\u79cd\u4e0d\u540c\u7528\u6cd5<\/p><\/blockquote>\n<h1 id=\"1bootstrap\">1\u3001Bootstrap<\/h1>\n<p>\uff081\uff09Bootstrap\u7684\u6838\u5fc3\u662f<strong>\u6709\u653e\u56de\u7684\u62bd\u6837<\/strong>\uff0c\u5e38\u7528\u4e8e\u4f30\u8ba1\u7edf\u8ba1\u91cf(\u4f8b\u5982\u5747\u503c\u7b49)\u7f6e\u4fe1\u533a\u95f4<\/p>\n<ul>\n<li>\n<p>\u5728\u6837\u672c\u6570\u636e\u7b26\u5408\u6b63\u6001\u5206\u5e03\u7684\u60c5\u51b5\uff0c\u53ef\u57fa\u4e8e\u4e2d\u5fc3\u6781\u9650\u5b9a\u7406\u4f7f\u7528\u6807\u51c6\u8bef\u8ba1\u7b97\u516c\u5f0f\u8ba1\u7b97\u7f6e\u4fe1\u533a\u95f4\u3002\u8be6\u89c1\u4e4b\u524d\u7684\u7b14\u8bb0002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--Seurat4\u57fa\u7840\u6d41\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/006-seurat-basic\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/006-seurat-basic\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>packageVersion(<span style=\"color:#0ff;font-weight:bold\">&#34;Seurat&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] \u20184.0.6\u2019<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(Seurat)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span>library(clustree)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"0\u5bfc\u5165\u6570\u636e\u65b9\u5f0f\">0\u3001\u5bfc\u5165\u6570\u636e\u65b9\u5f0f<\/h3>\n<h4 id=\"1cellranger\u6bd4\u5bf9\u7ed3\u679c\">\uff081\uff09cellranger\u6bd4\u5bf9\u7ed3\u679c<\/h4>\n<p>\u5bf9\u6bcf\u4e2a\u6d4b\u5e8f\u6837\u672c\u6570\u636e\u7ecfcellranger\u4e0a\u6e38\u6bd4\u5bf9\uff0c\u4ea7\u751f3\u4e2a\u6587\u4ef6\uff0c\u5206\u522b\u662f\uff1a<\/p>"},{"title":"Python\u57fa\u7840-(6)\u6355\u6349\u5f02\u5e38Error","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/006-python-exceptions\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/006-python-exceptions\/","description":"<h3 id=\"1\u4ec0\u4e48\u662f\u5f02\u5e38\">1\u3001\u4ec0\u4e48\u662f\u5f02\u5e38<\/h3>\n<p>\u5f02\u5e38\u901a\u5e38\u662f\u6307\u56e0\u5404\u79cd\u539f\u56e0\u7684\u51fa\u9519\u7a0b\u5e8f\u4ee3\u7801\u4e0d\u80fd\u6b63\u5e38\u8fd0\u884c\uff0c\u4ece\u800c\u8fd4\u56de\u62a5\u9519\u4fe1\u606f\uff0c\u4e2d\u65ad\u7a0b\u5e8f\u3002<\/p>\n<p>\u62a5\u9519\u4fe1\u606f\u7531\u4e24\u90e8\u5206\u7ec4\u6210\uff081\uff09Traceback\uff1a\u8ffd\u6eaf\u51fa\u9519\u7684\u6e90\u5934\uff082\uff09\u5f02\u5e38\u6240\u5c5e\u7684\u7c7b\uff0c\u4ee5\u53ca\u63d0\u793a\u7684\u4e0a\u4e0b\u6587\u3002<\/p>"},{"title":"\u7edf\u8ba1\u5b66-\u751f\u4fe1\u4e2d\u5e38\u89c1\u7edf\u8ba1\u6307\u6807","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/010-bio-stats\/","pubDate":"Sun, 10 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/010-bio-stats\/","description":"<h1 id=\"1ks\u7edf\u8ba1\u91cf\">1\u3001KS\u7edf\u8ba1\u91cf<\/h1>\n<p>Kolmogorov-Smirnov Tests<\/p>\n<p>Gene Set Enrichment Analysis<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/franapoli\/signed-ks-test\">https:\/\/github.com\/franapoli\/signed-ks-test<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>source(<span style=\"color:#0ff;font-weight:bold\">&#34;signed-ks-test.R&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># c(&#34;two.sided&#34;, &#34;less&#34;, &#34;greater&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ks = ks.test.2(c(<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">10<\/span>,<span style=\"color:#ff0;font-weight:bold\">11<\/span>,<span style=\"color:#ff0;font-weight:bold\">20<\/span>), <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  alternative = <span style=\"color:#0ff;font-weight:bold\">&#34;greater&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \tTwo-sample Kolmogorov-Smirnov test<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># data:  c(2, 10, 11, 20) and 1:100<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># D^+ = 0.8, p-value = 0.007277<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># alternative hypothesis: the CDF of x lies above that of y<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ks$ES\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 0.8<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ks$p.value\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 0.007276706<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"Python\u57fa\u7840-(7)\u6a21\u5757\/\u5305Module","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/007-python-modules\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/007-python-modules\/","description":"<h3 id=\"1\u52a0\u8f7d\u6a21\u5757\">1\u3001\u52a0\u8f7d\u6a21\u5757<\/h3>\n<p>\u6a21\u5757\u7b80\u5355\u6765\u8bf4\u662f\u7528\u6765\u5b9a\u4e49\u51fd\u6570\u3001\u7c7b\u3001\u53d8\u91cf\u7684python\u811a\u672c\u6587\u4ef6\u3002<\/p>\n<p>\u6a21\u5757\u7684\u5206\u7c7b<\/p>\n<ul>\n<li>\n<p>\u6839\u636e\u6765\u6e90\u4e0d\u540c\uff1a\u53ef\u5206\u4e3a\u5185\u7f6e\u6a21\u5757\u3001\u7b2c\u4e09\u65b9\u6a21\u5757\u4ee5\u53ca\u81ea\u5efa\u6a21\u5757\u3002<\/p>\n<p>\u65e0\u8bba\u54ea\u4e00\u79cd\u6a21\u5757\uff0c\u90fd\u9700\u8981\u653e\u5728\u6b63\u786e\u7684\u8def\u5f84\u4e0b\uff0c\u8ba9python\u53ef\u4ee5\u627e\u5230\uff0c\u7136\u540e\u624d\u53ef\u4ee5\u6210\u529f\u52a0\u8f7d\u3002<\/p>"},{"title":"Python\u57fa\u7840-(8)\u5e38\u7528\u57fa\u7840\u6a21\u5757Module","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/008-python-builtin-modules\/","pubDate":"Sun, 17 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/008-python-builtin-modules\/","description":"<h1 id=\"1-sys\">1. sys<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) sys.argv \u7ed9\u811a\u672c\u4f20\u53c2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5982\u4e0b\u5b9a\u4e49\u4e00\u4e2asys.py\u811a\u672c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#!\/usr\/bin\/env python<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> sys\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(sys.argv[<span style=\"color:#ff0;font-weight:bold\">0<\/span>]) <span style=\"color:#007f7f\">#\u7b2c0\u4e2a\u53c2\u6570\u4e3a\u811a\u672c\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(sys.argv[<span style=\"color:#ff0;font-weight:bold\">1<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>python sys.py first\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sys.py<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># first<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) sys.path \u4e00\u4e2a\u5217\u8868\uff0c\u5305\u542b\u8981\u5728\u5176\u4e2d\u67e5\u627e\u6a21\u5757\u7684\u76ee\u5f55\u540d\u79f0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sys.path.append()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2-os\">2. os<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) os.system \u6267\u884cshell\u547d\u4ee4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.system(<span style=\"color:#0ff;font-weight:bold\">&#34;pwd&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>os.system(<span style=\"color:#0ff;font-weight:bold\">&#34;ls -lh&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) os.path \u8def\u5f84\u64cd\u4f5c\u76f8\u5173<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.abspath(<span style=\"color:#0ff;font-weight:bold\">&#34;.&#34;<\/span>)  <span style=\"color:#007f7f\">#\u8fd4\u56de\u7edd\u5bf9\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.basename(<span style=\"color:#0ff;font-weight:bold\">&#34;\/home\/test\/file.txt&#34;<\/span>) <span style=\"color:#007f7f\">#\u5355\u72ec\u8fd4\u56de\u6587\u4ef6\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.dirname(<span style=\"color:#0ff;font-weight:bold\">&#34;\/home\/test\/file.txt&#34;<\/span>)  <span style=\"color:#007f7f\">#\u5355\u72ec\u8fd4\u56de\u8def\u5f84\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.split(<span style=\"color:#0ff;font-weight:bold\">&#34;\/home\/test\/file.txt&#34;<\/span>) <span style=\"color:#007f7f\">#\u8fd4\u56de\u7531\u6587\u4ef6\u540d\u548c\u8def\u5f84\u540d\u7ec4\u6210\u7684\u5143\u7ec4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(&#39;\/home\/test&#39;, &#39;file.txt&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.splitext(<span style=\"color:#0ff;font-weight:bold\">&#34;file.txt&#34;<\/span>)  <span style=\"color:#007f7f\">#\u5c06\u6587\u4ef6\u540d\u4e0e\u540e\u7f00\u540d\u5206\u5f00<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(&#39;file&#39;, &#39;.txt&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.path.exists(<span style=\"color:#0ff;font-weight:bold\">&#34;\/home\/test\/file.txt&#34;<\/span>) <span style=\"color:#007f7f\">#\u5224\u65ad\u6587\u4ef6\u6216\u8005\u76ee\u5f55\u662f\u5426\u5b58\u5728<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#False<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u6b64\u5916os\u6a21\u5757\u8fd8\u652f\u6301\u5bf9\u76ee\u5f55\u3001\u6587\u4ef6\u7684\u5e38\u89c4\u64cd\u4f5c\uff0c\u4f8b\u5982\u521b\u5efa\u3001\u5220\u9664\u3001\u91cd\u547d\u540d\u7b49<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3-time\">3. time<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> time\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.sleep(<span style=\"color:#ff0;font-weight:bold\">3<\/span>) <span style=\"color:#007f7f\">#\u89e3\u91ca\u5668\u7b49\u5f85\u6307\u5b9a\u79d2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.time() <span style=\"color:#007f7f\">#\u5f53\u524d\u65f6\u95f4\u81f3\u65b0\u7eaa\u5143\u7684\u79d2\u6570(\u65f6\u95f4\u6233)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1649984110.885341<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.localtime() <span style=\"color:#007f7f\">#\u9ed8\u8ba4\u8fd4\u56de\u5f53\u524d\u65f6\u95f4\u6233\u7684\u65f6\u95f4\u5143\u7ec4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.localtime(<span style=\"color:#ff0;font-weight:bold\">100000000<\/span>) <span style=\"color:#007f7f\">#\u8fd4\u56de\u6307\u5b9a\u65f6\u95f4\u6233\u65f6\u95f4\u5143\u7ec4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># time.struct_time(tm_year=1973, tm_mon=3, tm_mday=3, tm_hour=17, tm_min=46, tm_sec=40, tm_wday=5, tm_yday=62, tm_isdst=0)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">tuple<\/span>(time.localtime(<span style=\"color:#ff0;font-weight:bold\">100000000<\/span>)) <span style=\"color:#007f7f\"># \u8fd4\u56detuple<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1973, 3, 3, 17, 46, 40, 5, 62, 0)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\u5c06\u65f6\u95f4\u5143\u7ec4\u683c\u5f0f\u5316\u8f93\u51fa<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.asctime(time.localtime()) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#39;Fri Apr 15 08:59:43 2022&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(1)\u6309\u81ea\u5b9a\u4e49\u683c\u5f0f\u8f93\u51fa<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5e38\u89c1\u7684item\u6709\uff1a %Y-\u5e74, %m-\u6708, %d-\u65e5, %H-\u65f6, %M-\u5206, %S-\u79d2, %a-\u661f\u671f\u51e0, %b-\u82f1\u6587\u6708\u4efd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5168\u90e8\u7684item\u53c2\u8003\uff1ahttps:\/\/www.runoob.com\/python\/python-date-time.html<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.strftime(<span style=\"color:#0ff;font-weight:bold\">&#34;%Y-%m-<\/span><span style=\"color:#0ff;font-weight:bold\">%d<\/span><span style=\"color:#0ff;font-weight:bold\"> %H:%M:%S&#34;<\/span>, time.localtime()) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#39;2022-04-15 09:12:29&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.strftime(<span style=\"color:#0ff;font-weight:bold\">&#34;<\/span><span style=\"color:#0ff;font-weight:bold\">%a<\/span><span style=\"color:#0ff;font-weight:bold\"> %b <\/span><span style=\"color:#0ff;font-weight:bold\">%d<\/span><span style=\"color:#0ff;font-weight:bold\"> %H:%M:%S %Y&#34;<\/span>, time.localtime()) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#39;Fri Apr 15 09:12:49 2022&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###(2)\u5c06\u683c\u5f0f\u5b57\u7b26\u4e32\u8f6c\u6362\u4e3a\u65f6\u95f4\u6233<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>a = <span style=\"color:#0ff;font-weight:bold\">&#34;2022-04-15 09:12:29&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>time.mktime(time.strptime(a,<span style=\"color:#0ff;font-weight:bold\">&#34;%Y-%m-<\/span><span style=\"color:#0ff;font-weight:bold\">%d<\/span><span style=\"color:#0ff;font-weight:bold\"> %H:%M:%S&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1649985149.0<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u5173\u4e8e\u65f6\u95f4\u5143\u7ec4\u7684\u683c\u5f0f\uff1a<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--monocle\u8f68\u8ff9\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/008-monocle-trajectory\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/008-monocle-trajectory\/","description":"<h1 id=\"\u4e00monocle\">\u4e00\u3001monocle<\/h1>\n<ul>\n<li>\u53c2\u8003\u6559\u7a0b\/\u7b14\u8bb0<\/li>\n<\/ul>\n<p>\uff081\uff09http:\/\/cole-trapnell-lab.github.io\/monocle-release\/docs\/#constructing-single-cell-trajectories<\/p>"},{"title":"Python\u57fa\u7840-(9)\u6587\u672c\u8bfb\u5199\u4e0epickle\u4fdd\u5b58","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/009-python-file-io\/","pubDate":"Sun, 17 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/009-python-file-io\/","description":"<h3 id=\"1\u6253\u5f00\u6587\u4ef6\">1\u3001\u6253\u5f00\u6587\u4ef6<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) r \u53ea\u80fd\u8bfb\u53d6\u3002\u82e5\u6587\u4ef6\u4e0d\u5b58\u5728\uff0c\u4f1a\u62a5\u9519\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>f = <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;test.txt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;r&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7531\u4e8e\u9ed8\u8ba4mode=&#34;r&#34;\uff0c \u7b49\u4ef7\u4e8e f = open(&#34;test.txt&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u6587\u4ef6\u5bf9\u8c61f\u5177\u6709\u8bfb\u53d6\u7684\u76f8\u5173\u65b9\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) w \u53ea\u80fd\u5199\u5165\u3002\u82e5\u6587\u4ef6\u5df2\u5b58\u5728\uff0c\u4f1a\u8986\u76d6\u539f\u6709\u5185\u5bb9\uff1b\u82e5\u4e0d\u5b58\u5728\u4f1a\u65b0\u5efa\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>f = <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;test.txt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;w&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u6587\u4ef6\u5bf9\u8c61f\u5177\u6709\u5199\u5165\u7684\u76f8\u5173\u65b9\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (3) x \u53ea\u80fd\u5199\u5165\u3002\u82e5\u6587\u4ef6\u5df2\u5b58\u5728\uff0c\u4f1a\u62a5\u9519\uff1b\u82e5\u4e0d\u5b58\u5728\u4f1a\u65b0\u5efa\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (4) a \u53ea\u80fd\u5199\u5165\u3002\u82e5\u6587\u4ef6\u5df2\u5b58\u5728\uff0c\u4f1a\u8ffd\u52a0\uff1b\u82e5\u4e0d\u5b58\u5728\u4f1a\u65b0\u5efa\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (5) r+ \u53ef\u8bfb\u53ef\u5199\u3002\u82e5\u6587\u4ef6\u4e0d\u5b58\u5728\u4f1a\u62a5\u9519\uff1b\u5df2\u5b58\u5728\u4f1a\u8ffd\u52a0\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>f = <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;test.txt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;r+&#34;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u6587\u4ef6\u5bf9\u8c61f\u5177\u6709\u8bfb\u53d6\u548c\u5199\u5165\u7684\u76f8\u5173\u65b9\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (6) w+ \u53ef\u8bfb\u53ef\u5199\u3002\u82e5\u6587\u4ef6\u4e0d\u5b58\u5728\u4f1a\u65b0\u5efa\uff1b\u5df2\u5b58\u5728\u4f1a\u8986\u76d6\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>f = <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#34;test.txt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;w+&#34;<\/span>) \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u5728\u6253\u5f00\u6587\u4ef6\uff0c\u8fdb\u884c\u8bfb\u53d6\/\u5199\u5165\u7b49\u64cd\u4f5c\u540e\uff0c\u5f85\u9000\u51fa\u65f6\uff0c\u8bb0\u5f97<code>f.close()<\/code>\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--CellChat\u7ec6\u80de\u901a\u8baf\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/009-cellchat\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/009-cellchat\/","description":"<p>\u4e3b\u8981\u53c2\u8003\u8d44\u6599\uff1a<\/p>\n<p>1\u3001https:\/\/htmlpreview.github.io\/?https:\/\/github.com\/sqjin\/CellChat\/blob\/master\/tutorial\/CellChat-vignette.html<\/p>"},{"title":"Python-Dunder\u53cc\u4e0b\u5212\u7ebf\u7279\u6b8a\u65b9\u6cd5","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/010-python-dunder\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/010-python-dunder\/","description":"<h1 id=\"\u7279\u6b8a\u7c7b\u53d8\u91cf\">\u7279\u6b8a\u7c7b\u53d8\u91cf<\/h1>\n<p>\u5728\u5b9a\u4e49\u7c7b\u65f6\uff0cPython \u63d0\u4f9b\u4e86\u4e00\u4e9b<strong>\u7279\u6b8a\u65b9\u6cd5<\/strong>\uff08\u4e5f\u79f0\u4e3a\u201c\u9b54\u672f\u65b9\u6cd5\u201d\u6216\u201cdunder \u65b9\u6cd5\u201d\uff0c\u56e0\u4e3a\u5b83\u4eec\u7684\u540d\u79f0\u524d\u540e\u90fd\u6709\u53cc\u4e0b\u5212\u7ebf <code>__<\/code>, double underscore\uff09\uff0c\u8fd9\u4e9b\u65b9\u6cd5\u7528\u4e8e\u4e3a\u7c7b\u5b9a\u4e49\u7279\u6b8a\u884c\u4e3a\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--pySCENIC\u8f6c\u5f55\u56e0\u5b50\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/010-pyscenic\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/010-pyscenic\/","description":"<blockquote>\n<p>SCENIC\u5168\u79f0Single-Cell rEgulatory Network Inference and Clustering\uff0c\u5373\u8f6c\u5f55\u56e0\u5b50\u5206\u6790\uff0c\u7528\u4e8e\u6784\u5efaGRN\uff0cgene regulatory network\u57fa\u56e0\u8c03\u63a7\u7f51\u7edc\u30022017\u5e74\u4e8eNat Methods\u9996\u6b21\u53d1\u8868R\u5305\u7248\u672c(https:\/\/doi:10.1038\/nmeth.4463.)\uff0c\u540e\u53c8\u4e8e2020\u5e74NATURE PROTOCOLS\u53d1\u8868python\u7248\u672c(<a href=\"https:\/\/doi.org\/10.1038\/s41596-020-0336-2\">https:\/\/doi.org\/10.1038\/s41596-020-0336-2<\/a>)\uff0c\u5206\u6790\u901f\u5ea6\u5f97\u5230\u5927\u5e45\u5ea6\u63d0\u5347\uff0c\u800c\u5206\u6790\u65b9\u6cd5\u57fa\u672c\u76f8\u540c\u3002<\/p>"},{"title":"Python-\u88c5\u9970\u5668Decorator","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/011-python-decorators\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/011-python-decorators\/","description":"<p>\u5728 Python \u4e2d\uff0c<strong>\u88c5\u9970\u5668<\/strong>\uff08decorator\uff09\u662f\u4e00\u79cd\u7279\u6b8a\u7684\u51fd\u6570\u6216\u7c7b\uff0c\u7528\u4e8e\u5728\u4e0d\u4fee\u6539\u539f\u59cb\u4ee3\u7801\u7684\u60c5\u51b5\u4e0b\uff0c\u52a8\u6001\u5730\u4fee\u6539\u6216\u589e\u5f3a\u51fd\u6570\u3001\u65b9\u6cd5\u6216\u7c7b\u7684\u884c\u4e3a\u3002<\/p>\n<blockquote>\n<p><strong>\u51fd\u6570<\/strong>\uff1a\u72ec\u7acb\u7684\u4ee3\u7801\u5757\uff0c\u53ef\u4ee5\u5728\u4efb\u4f55\u5730\u65b9\u5b9a\u4e49\u548c\u8c03\u7528\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--Palantir\u8f68\u8ff9\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/011-palantir-trajectory\/","pubDate":"Thu, 12 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/011-palantir-trajectory\/","description":"<p>Paper\uff1ahttps:\/\/www.nature.com\/articles\/s41587-019-0068-4<\/p>\n<p>github\uff1ahttps:\/\/github.com\/dpeerlab\/Palantir<\/p>"},{"title":"Python-tdigest\u5206\u4f4d\u6570\u7edf\u8ba1","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/012-python-tdigest\/","pubDate":"Thu, 23 Jan 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/012-python-tdigest\/","description":"<p><code>tdigest<\/code> python\u5de5\u5177  \u662f\u4e00\u79cd\u7528\u4e8e\u9ad8\u6548\u8ba1\u7b97\u8fd1\u4f3c\u5206\u4f4d\u6570\u7684\u6570\u636e\u7ed3\u6784\u548c\u7b97\u6cd5\u3002\u76f8\u8f83\u4e8e\u4f20\u7edf\u7684\u5206\u4f4d\u6570\u8ba1\u7b97\u65b9\u6cd5\uff0ctdigest\u53ef\u4ee5\u5b9e\u73b0\u4ee5\u8f83\u5c0f\u7684\u5185\u5b58\u5f00\u9500\u548c\u8f83\u5feb\u7684\u8ba1\u7b97\u901f\u5ea6\uff0c\u63d0\u4f9b\u8fd1\u4f3c\u4f46\u8db3\u591f\u7cbe\u786e\u7684\u5206\u4f4d\u6570\u4f30\u8ba1\u3002<\/p>"},{"title":"\u4f7f\u7528Seurat\u5305\u5206\u6790\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/015-seurat-spatial\/","pubDate":"Sun, 05 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/015-seurat-spatial\/","description":"<blockquote>\n<p>\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u5e38\u7528\u7684Seurat\u5305\u4e5f\u96c6\u6210\u4e86\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u7684\u5206\u6790\u6d41\u7a0b\u3002<\/p>\n<p><a href=\"https:\/\/satijalab.org\/seurat\/articles\/spatial_vignette.html\">https:\/\/satijalab.org\/seurat\/articles\/spatial_vignette.html<\/a>\u3002<\/p>\n<p>\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u4e3a\u57282D\u7ec4\u7ec7\u5207\u9762\u7684\u591a\u4e2a\u91c7\u6837spot\u8fdb\u884c\u6d4b\u5e8f\uff0c\u540c\u65f6\u8bb0\u5f55\u4e0b\u6bcf\u4e2aspot\u5728\u5207\u7247\u4e2d\u76842\u7ef4\u5750\u6807\u4f4d\u7f6e\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--hdWGCNA\u5171\u8868\u8fbe\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/016-hdwgcna\/","pubDate":"Thu, 07 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/016-hdwgcna\/","description":"<blockquote>\n<p>WGCNA\u662f\u9002\u7528\u4e8e\u5927\u6279\u91cf\u6837\u672c\u7684array\u6216\u8005Bulk RNAseq\u6570\u636e\u7684\u52a0\u6743\u57fa\u56e0\u5171\u8868\u8fbe\u7f51\u7edc\u5206\u6790\u3002\u7531\u4e8e\u5355\u7ec6\u80de\u6570\u636e\u7684\u7a00\u758f\u6027\uff0c\u4e0d\u9002\u7528\u4e8eWGCNA\u76f4\u63a5\u5206\u6790\u3002hdWGCNA\u5305\u57fa\u4e8eWGCNA\u5305\u63d0\u4f9b\u4e86\u4e00\u79cd\u9488\u5bf9scRNAseq\u6570\u636e\u7684\u52a0\u6743\u57fa\u56e0\u5171\u8868\u8fbe\u7f51\u7edc\u5206\u6790\u7b56\u7565\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--ECAUGT\u63d0\u53d6hECA\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/017-ecaugt\/","pubDate":"Thu, 19 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/017-ecaugt\/","description":"<blockquote>\n<p>\u57fa\u4e8e\u5148\u524d\u7684hECA\u6587\u732e\u7b14\u8bb0\uff0c\u5b66\u4e60\u4f7f\u7528python\u5de5\u5177ECAUGHT\u9ad8\u6548\u63d0\u53d6\u7279\u5b9a\u7c7b\u578b\u7684\u4eba\u7c7b\u5355\u7ec6\u80de\u56fe\u8c31\u6570\u636e\u3002\u503c\u5f97\u6ce8\u610f\u7684\u662fhECA\u5bf9\u4e0d\u540c\u6765\u6e90\u6570\u636e\u96c6\u4ec5\u8fdb\u884c\u4e86\u6d4b\u5e8f\u6587\u5e93\u7684\u6807\u51c6\u5316\u4ee5\u53calog\u8f6c\u6362\uff0c\u7528\u6237\u53ef\u6839\u636e\u7279\u5b9a\u5e94\u7528\u573a\u666f\u8fdb\u884c\u9002\u5f53\u7684\u6279\u6b21\u6821\u6b63\u5904\u7406\u3002<\/p>"},{"title":"Python-lambda\u51fd\u6570\u8868\u8fbe\u5f0f","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/015-python-lambda\/","pubDate":"Sat, 17 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/015-python-lambda\/","description":"<blockquote>\n<p>lambda\u8868\u8fbe\u5f0f\u53ef\u7528\u4e8e\u5b9a\u4e49\u7b80\u5355\u7684\u4e00\u884c\u5f0f\u51fd\u6570\uff0c\u5e76\u4e14\u53ef\u642d\u914d\u5176\u5b83\u51fd\u6570\u65f6\u6709\u591a\u79cd\u884d\u751f\u7528\u6cd5\u3002<\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.apply.html\">https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.apply.html<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/www.learncodewithmike.com\/2019\/12\/python-lambda-functions.html\">https:\/\/www.learncodewithmike.com\/2019\/12\/python-lambda-functions.html<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/pythonviz.com\/pandas\/3-ways-to-use-pandas-apply-in-python\/\">https:\/\/pythonviz.com\/pandas\/3-ways-to-use-pandas-apply-in-python\/<\/a><\/p>\n<\/li>\n<\/ul><\/blockquote>\n<h2 id=\"1\u57fa\u7840\u7528\u6cd5\">1\u3001\u57fa\u7840\u7528\u6cd5<\/h2>\n<p>\u5982\u4e0b\u6240\u793a\uff0clambda\u8868\u8fbe\u5f0f\u67093\u4e2a\u7ec4\u5206<\/p>\n<ul>\n<li>\u5173\u952e\u5b57 lambda<\/li>\n<li>\u51fd\u6570\u6240\u9700\u7684\u53c2\u6570\uff0c\u6839\u636e\u9700\u8981\u53ef\u4ee5\u6709\u591a\u4e2a<\/li>\n<li>\u51fd\u6570\u8868\u8fbe\u5f0f\uff0c\u901a\u5e38\u5c31\u662f\u4e00\u884c\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/python-lambda-functions-new.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/python-lambda-functions-new.png\" alt=\"Python Lambda Function\/Anonymous Function | Hack The Developer\" style=\"zoom: 50%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = <span style=\"color:#fff;font-weight:bold\">lambda<\/span> a : a + <span style=\"color:#ff0;font-weight:bold\">10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x(<span style=\"color:#ff0;font-weight:bold\">5<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = <span style=\"color:#fff;font-weight:bold\">lambda<\/span> a, b : a * b\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(x(<span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>(<span style=\"color:#fff;font-weight:bold\">lambda<\/span> a, b : a * b)(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2\u642d\u914d\u7528\u6cd5\">2\u3001\u642d\u914d\u7528\u6cd5<\/h2>\n<h3 id=\"21-map\u8fed\u4ee3\">2.1 map()\u8fed\u4ee3<\/h3>\n<p>map()\u63a5\u53d7\u4e24\u4e2a\u53c2\u6570\uff1a\u9010\u5143\u7d20\u8fdb\u884c\u67d0\u4e2a\u51fd\u6570\u7684\u8ba1\u7b97\uff0c\u8fd4\u56de\u76f8\u5e94\u7684\u7ed3\u679c<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--\u7ec6\u80de\u5468\u671f\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/020-cell-cycle\/","pubDate":"Sun, 22 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/020-cell-cycle\/","description":"<blockquote>\n<p>A cell cycle is a series of events that takes place in a cell as it grows and divides.\u5373\u63cf\u8ff0\u7ec6\u80de\u751f\u957f\u3001\u5206\u88c2\u6574\u4e2a\u8fc7\u7a0b\u4e2d\u7ec6\u80de\u53d8\u5316\u8fc7\u7a0b\u3002\u6700\u91cd\u8981\u7684\u4e24\u4e2a\u7279\u70b9\u5c31\u662fDNA\u590d\u5236\u3001\u5206\u88c2\u6210\u4e24\u4e2a\u4e00\u6837\u7684\u5b50\u7ec6\u80de\u3002\u5bf9\u4e8e\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u6570\u636e\uff0c\u53ef\u6839\u636e\u76f8\u5173marker\u57fa\u56e0\u7684\u8868\u8fbe\u6c34\u5e73\u5224\u65ad\u6bcf\u4e00\u4e2a\u7ec6\u80de\u6240\u5904\u7684\u7ec6\u80de\u5468\u671f\u72b6\u6001\u3002\u6b64\u5916\u5728\u5206\u6790\u591a\u6570\u636e\u96c6\u95f4\u6279\u6b21\u6548\u5e94\u65f6\uff0c\u53ef\u6839\u636e\u6bcf\u4e2a\u6570\u636e\u96c6\u4e2d\u5404\u4e2a\u7ec6\u80de\u5468\u671f\u6bd4\u4f8b\u8fdb\u884c\u5224\u65ad\u4e0e\u6821\u6b63\u3002<\/p>"},{"title":"Python-threading\u591a\u7ebf\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/016-python-threading\/","pubDate":"Mon, 19 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/016-python-threading\/","description":"<blockquote>\n<p>python\u5185\u7f6e\u7684threading\u6a21\u5757\u53ef\u4ee5\u5b9e\u73b0\u591a\u4efb\u52a1\u7684\u591a\u7ebf\u7a0b\u5e76\u884c\u5904\u7406\uff0c\u5982\u4e0b\u7b80\u5355\u8bb0\u5f55\u4e00\u4e0b\u7528\u6cd5\u3002<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/t1_p0bram.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/t1_p0bram.png\" alt=\"Definitive Guide: Threading in Python Tutorial | DataCamp\"  \/>\n<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--\u591a\u6837\u672c\u6279\u6b21\u6821\u6b63","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/021-batch-correction\/","pubDate":"Sun, 22 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/021-batch-correction\/","description":"<blockquote>\n<p>\u5f53\u5206\u6790\u591a\u4e2a\u6837\u672c\u7684\u5355\u7ec6\u80de\u6570\u636e\u96c6\u65f6\uff0c\u5176\u4e2d\u91cd\u8981\u7684\u4e00\u6b65\u662f\u5224\u65ad\u5e76\u6821\u6b63\u6f5c\u5728\u7684\u6279\u6b21\u6548\u5e94\u3002\u5982\u4e0b\u7b80\u5355\u5b66\u4e60\u4e24\u79cd\u5355\u7ec6\u80de\u6279\u6b21\u6548\u5e94\u5206\u6790\u65b9\u6cd5\uff0c\u5206\u522b\u57fa\u4e8eSeurat\u4e0eharmony\u5305\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--SingleCellExperiment\u5bf9\u8c61\u683c\u5f0f","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/022-sce\/","pubDate":"Sun, 22 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/022-sce\/","description":"<blockquote>\n<p><code>SingleCellExperiment<\/code>\u662f\u901a\u8fc7SingleCellExperiment\u5305\u521b\u5efa\u7684\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u5bf9\u8c61\uff0c\u5df2\u6709\u51e0\u5341\u4e2a\u5355\u7ec6\u80deR\u5305\u652f\u6301\u3002<\/p>\n<p>\u5176\u884d\u751f\u81ea<a href=\"https:\/\/bioconductor.org\/packages\/3.11\/bioc\/vignettes\/SummarizedExperiment\/inst\/doc\/SummarizedExperiment.html\">SummarizedExperiment<\/a>\uff0c\u4e4b\u524d\u5728GEO\u6570\u636e\u6316\u6398\u5b66\u4e60\u65f6\uff0c\u4e86\u89e3\u8fc7\u76f8\u5173\u77e5\u8bc6\uff0c\u4e3b\u8981\u662f<code>assay<\/code>\u4e0e<code>pData<\/code>\u4e24\u4e2a\u51fd\u6570\u7684\u4f7f\u7528\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--infercnv\u62f7\u8d1d\u6570\u53d8\u5f02\u9274\u5b9a","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/018-infercnv\/","pubDate":"Fri, 20 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/018-infercnv\/","description":"<blockquote>\n<p>inferCNV\u5305\u53ef\u6839\u636e\u80bf\u7624\u7ec4\u7ec7\u76f8\u5173\u7684\u5355\u7ec6\u80de\u8868\u8fbe\u6570\u636e\uff0c\u63a8\u6d4b\u80bf\u7624\u7ec6\u80de\u7684\u62f7\u8d1d\u6570\u53d8\u5f02\u60c5\u51b5\uff0c\u4ece\u800c\u5b8c\u6210\u6076\u6027\u7ec6\u80de\u7684\u9274\u5b9a\u3002<\/p>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>BiocManager::install(<span style=\"color:#0ff;font-weight:bold\">&#34;infercnv&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(infercnv)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6682\u65f6\u5728window\u5b89\u88c5\u51fa\u73b0\u70b9\u95ee\u9898\uff0c\u76ee\u524d\u5728linux\u4f7f\u7528conda\u5b89\u88c5\u3001\u5b66\u4e60\u3002<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/infercnv_logo.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/infercnv_logo.png\" alt=\"InferCNV\"  \/>\n<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--scanpy\u57fa\u7840\u7528\u6cd5(anndata,loom\u683c\u5f0f)","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/023-scanpy\/","pubDate":"Mon, 23 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/023-scanpy\/","description":"<blockquote>\n<p>scanpy\u662f\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u7684python\u5de5\u5177\u5305\uff0c\u5c06\u6570\u636e\u4ee5Anndata\u5bf9\u8c61\u7684\u683c\u5f0f\u8fdb\u884c\u50a8\u5b58\u3002\u5982\u4e0b\u5c06\u5b66\u4e60Anndata\u5bf9\u8c61\u64cd\u4f5c\u4ee5\u53cascanpy\u5206\u6790\u7684\u57fa\u7840\u7528\u6cd5\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--SingleR\u7ec6\u80de\u7c7b\u578b\u6ce8\u91ca","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/019-singler\/","pubDate":"Fri, 20 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/019-singler\/","description":"<blockquote>\n<p>SingleR\u5305\u662f\u5728\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u65f6\u7528\u4e8e\u7ec6\u80de\u7c7b\u578b\u81ea\u52a8\u6ce8\u91ca\u7684\u5e38\u7528\u5de5\u5177\u3002\u5176\u57fa\u672c\u539f\u7406\u662f\u4f7f\u7528\u5df2\u6709\u7ec6\u80de\u6807\u7b7e\u7684\u53c2\u8003\u8f6c\u5f55\u7ec4\u6570\u636e\u96c6\u7684\u8868\u8fbe\u8c31\uff0c\u57fa\u4e8e\u76f8\u4f3c\u6027\u539f\u5219\u6ce8\u91ca\u672a\u77e5\u5355\u7ec6\u80de\u6570\u636e\u7684\u7ec6\u80de\u7c7b\u578b\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--RNAvelocity\u901f\u7387\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/024-rnavelocity\/","pubDate":"Thu, 26 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/024-rnavelocity\/","description":"<blockquote>\n<p>RNA velocity(RNA\u901f\u7387)\u5206\u6790\u662f\u57fa\u4e8e\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u6d4b\u5e8f\u6570\u636e\u5206\u6790\u7ec6\u80de\u53d1\u80b2\u72b6\u6001\u52a8\u529b\u5b66\u7684\u65b9\u6cd5\u3002\u7b80\u5355\u6765\u8bf4\uff0c\u8be5\u6a21\u578b\u6839\u636e\u6d4b\u5e8fread\u7247\u6bb5\u5c5e\u4e8e<strong>unspliced pre-mrna<\/strong>\u4ee5\u53ca<strong>spliced mature mrna<\/strong>\u7684\u6bd4\u4f8b\u63a8\u6d4b\u5355\u7ec6\u80de\u7684\u53d1\u80b2\u8f68\u8ff9\u3002 \u9ad8\u6bd4\u4f8b\u7684<strong>unspliced pre-mrna<\/strong>\u7684\u5360\u6bd4\u8d8a\u9ad8\uff0cvelocity\u901f\u7387\u8d8a\u5927\uff0c\u8868\u660e\u5728\u4e4b\u540e\u9636\u6bb5\u4e2d\u5c06\u4ea7\u751f\u9ad8\u8868\u8fbe\u8d8b\u52bf\u3002<\/p>"},{"title":"Python\u6570\u636e\u79d1\u5b66-(1)IPython\u7684\u7279\u70b9","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/020-ipython-magic\/","pubDate":"Tue, 26 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/020-ipython-magic\/","description":"<blockquote>\n<p>Python\u6709\u4e0d\u5c11\u89e3\u91ca\u5668\uff0c\u9ed8\u8ba4\u4f7f\u7528\u7684\u662fCPython\u3002\u800cIPython\uff0cinteractive python\u53ef\u4ee5\u63d0\u4f9b\u4ea4\u4e92\u5f0f\u5f00\u53d1\u73af\u5883\uff1b\u662fJupyter\u7684\u5185\u6838\u3002\u5982\u679c\u8981\u4f7f\u7528Jupyter\uff0c\u4f7f\u7528\u7684\u5c31\u662fIPython\u5f00\u53d1\u73af\u5883\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--CytoTRACE\u8f68\u8ff9\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/025-cytotrace\/","pubDate":"Thu, 26 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/025-cytotrace\/","description":"<blockquote>\n<p><strong>CytoTRACE<\/strong>\u662f\u6839\u636e\u5355\u7ec6\u80de\u8868\u8fbe\u77e9\u9635\u63a8\u65ad\u7ec6\u80de\u5206\u5316\u8f68\u8ff9\u7684\u5de5\u5177\uff0c\u76ee\u524d\u63d0\u4f9b\u7f51\u9875\u7aef\u4e0eR\u5305\u4e24\u79cd\u5f62\u5f0f\u3002\u5982\u4e0b\u3002\u7b80\u5355\u5b66\u4e60\u5176R\u5305\u7528\u6cd5\u3002<\/p>\n<ul>\n<li>\u5b98\u65b9\u624b\u518c\uff1ahttps:\/\/cytotrace.stanford.edu\/<\/li>\n<li>\u53d1\u8868\u8bba\u6587\uff1a<a href=\"https:\/\/doi.org\/10.1126\/science.aax0249\">DOI: 10.1126\/science.aax0249<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230126190048340.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230126190048340.png\" alt=\"image-20230126190048340\" style=\"zoom: 80%;\" \/>\n<h2 id=\"1\u5b89\u88c5r\u5305\">1\u3001\u5b89\u88c5R\u5305<\/h2>\n<p>\u6839\u636e\u5b98\u65b9\u624b\u518c\uff0c\u9700\u8981\u624b\u52a8R\u5305\u6587\u4ef6\uff0c\u81ea\u884c\u5b89\u88c5\u3002\u5982\u4e0b\u7b14\u8bb0\u5728Linux\u7684R\u73af\u5883\u4e2d\u8fdb\u884c\u5b66\u4e60\u3002<\/p>"},{"title":"Python\u6570\u636e\u79d1\u5b66-(2)Numpy\u6570\u7ec4(torch\u5f20\u91cf)","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/021-numpy-tensors\/","pubDate":"Fri, 29 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/021-numpy-tensors\/","description":"<blockquote>\n<p>NumPy,Numerical Python\u521b\u5efa\u7684ndarray\u6570\u7ec4\u5728\u67d0\u4e9b\u65b9\u9762\u4e0ePython\u4e2d\u7684list\u5bf9\u8c61\u5f88\u76f8\u4f3c\uff1b\u4f46\u662f\u4e8c\u8005\u8fd8\u662f\u5f88\u591a\u533a\u522b\uff0c\u6bd4\u5982\u6570\u636e\u7c7b\u578b\u4e00\u81f4\u6027\u7684\u8981\u6c42\u3001\u7ef4\u5ea6\u7b49\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--cellphonedb\u7ec6\u80de\u901a\u8baf\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/026-cellphonedb\/","pubDate":"Sat, 28 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/026-cellphonedb\/","description":"<blockquote>\n<p>cellphonedb\u662f\u57fa\u4e8e\u914d\u53d7\u4f53\u5bf9\u8868\u8fbe\u6c34\u5e73\uff0c\u5206\u6790\u5355\u7ec6\u80de\u6570\u636e\u4e2d\u4e0d\u540c\u7ec6\u80de\u7c7b\u578b\u95f4\u76f8\u4e92\u4f5c\u7528\u7684Python\u5de5\u5177\u3002\u5176\u4e8e2020\u5e74\u5728nature protocols\u53d1\u8868\uff0c\u76ee\u524d\u5de5\u5177\u5305\u7248\u672c\u4ee5\u66f4\u65b0\u52303.1.0\uff0c\u914d\u53d7\u4f53\u6570\u636e\u5e93\u5df2\u66f4\u65b0\u52304\u7248\u672c\u3002\u5982\u4e0b\u5c06\u7b80\u5355\u5b66\u4e60\u8be5\u8f6f\u4ef6\u7684\u7528\u6cd5\u53ca\u7ed3\u679c\u53ef\u89c6\u5316\u65b9\u6cd5\u3002<\/p>"},{"title":"Python\u6570\u636e\u79d1\u5b66-(3)Pandas\u8868\u683c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/022-pandas\/","pubDate":"Tue, 03 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/022-pandas\/","description":"<blockquote>\n<p>Pandas\u76f8\u6bd4Numpy\u6570\u7ec4\u652f\u6301\u884c\u5217\u6807\u7b7e\u3001\u591a\u79cd\u6570\u636e\u7c7b\u578b\uff0c\u7c7b\u4f3cR\u8bed\u8a00\u4e2ddata.frame\u6570\u636e\u6846\u3002<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-b4c441acfb525f6e.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-b4c441acfb525f6e.png\" alt=\"img\" style=\"zoom: 33%;\" \/>\n<h1 id=\"1pandas\u7ed3\u6784\">1\u3001Pandas\u7ed3\u6784<\/h1>\n<h2 id=\"11-series\u6709\u7d22\u5f15\u7684\u4e00\u7ef4\u6570\u7ec4\">1.1 Series\uff1a\u6709\u7d22\u5f15\u7684\u4e00\u7ef4\u6570\u7ec4<\/h2>\n<h3 id=\"111-\u521b\u5efaseries\u5bf9\u8c61\">1.1.1 \u521b\u5efaSeries\u5bf9\u8c61<\/h3>\n<ul>\n<li>\u901a\u8fc7<code>pd.Serise<\/code>\u51fd\u6570\u521b\u5efa<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u901a\u8fc7index\u53c2\u6570\u8bbe\u7f6e\u7d22\u5f15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>data = pd.Series([<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>], index=[<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;b&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;c&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;d&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;e&#39;<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#a    1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#b    2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#c    3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#d    4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#e    5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#dtype: int64<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2)\u5982\u4e0d\u8bbe\u7f6eindex\u53c2\u6570\uff0c\u5219\u7d22\u5f15\u9ed8\u8ba4\u4e3a range(len)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data1 = pd.Series([<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(3)\u4e5f\u53ef\u4ee5\u4ee5\u5b57\u5178\u7684\u5f62\u5f0f\u521b\u5efa\uff0c\u952e\u503c\u5206\u522b\u5bf9\u5e94\u7d22\u5f15\u4e0e\u503c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data2 = pd.Series({<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;b&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;c&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;d&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;e&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">5<\/span>})\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"112-series\u5bf9\u8c61\u64cd\u4f5c\">1.1.2 Series\u5bf9\u8c61\u64cd\u4f5c<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>data = pd.Series([<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>], index=[<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;b&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;c&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;d&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;e&#39;<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u63d0\u53d6Series\u7684\u4e00\u7ef4\u6570\u7ec4\u4e0e\u7d22\u5f15\u6807\u7b7e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data.values\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># array([1, 2, 3, 4, 5])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data.index\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Index([&#39;a&#39;, &#39;b&#39;, &#39;c&#39;, &#39;d&#39;, &#39;e&#39;], dtype=&#39;object&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) \u6309\u663e\u793a\u7d22\u5f15\u53d6Series\u5b50\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>] \n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>:<span style=\"color:#0ff;font-weight:bold\">&#39;c&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>data[[<span style=\"color:#0ff;font-weight:bold\">&#34;a&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;c&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;e&#34;<\/span>]]\n<\/span><\/span><span style=\"display:flex;\"><span>data[data&gt;<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>data.loc[<span style=\"color:#0ff;font-weight:bold\">&#34;a&#34;<\/span>:<span style=\"color:#0ff;font-weight:bold\">&#34;c&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(3) \u6309\u9690\u5f0f\u7d22\u5f15\u53d6Series\u5b50\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#ff0;font-weight:bold\">0<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#ff0;font-weight:bold\">0<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>data[[<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>]]\n<\/span><\/span><span style=\"display:flex;\"><span>data.iloc[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p><code>.loc<\/code>\u4e0e<code>.iloc<\/code>\u7684\u4f5c\u7528\u4e3b\u8981\u4f53\u73b0\u5728\uff1aSeries\u7684index\u4e5f\u662f\u6570\u503c\u578b\u65f6\uff0c\u5bb9\u6613\u4e0e\u9690\u5f0f\u7d22\u5f15\u6df7\u6dc6\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--DoubletFinder\u8bc6\u522b\u53cc\u7ec6\u80de","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/027-doubletfinder\/","pubDate":"Sat, 28 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/027-doubletfinder\/","description":"<blockquote>\n<p>R\u5305DoubletFinder\u53ef\u7528\u4e8e\u68c0\u6d4b\u57fa\u4e8eDroplet\u5355\u7ec6\u80de\u6d4b\u5e8f\u6280\u672f(10X)\u7684\u53cc\u7ec6\u80de\u3002\u5982\u4e0b\u7b80\u5355\u5b66\u4e60\u8bc6\u522b\u539f\u7406\u4ee5\u7528\u6cd5\u3002<\/p>\n<ul>\n<li>\u539f\u59cb\u8bba\u6587\uff1ahttps:\/\/doi.org\/10.1016\/j.cels.2019.03.003<\/li>\n<li>\u5b98\u65b9\u624b\u518c\uff1ahttps:\/\/github.com\/chris-mcginnis-ucsf\/DoubletFinder<\/li>\n<li>\u89c6\u9891\u6559\u7a0b\uff1ahttps:\/\/www.youtube.com\/watch?v=NqvAS4HgmrE<\/li>\n<\/ul><\/blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>remotes::install_github(<span style=\"color:#0ff;font-weight:bold\">&#39;chris-mcginnis-ucsf\/DoubletFinder&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(DoubletFinder)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>Bug in Seurat v4: could not find function &ldquo;paramSweep_v3&rdquo;\n<a href=\"https:\/\/github.com\/chris-mcginnis-ucsf\/DoubletFinder\/issues\/184\">https:\/\/github.com\/chris-mcginnis-ucsf\/DoubletFinder\/issues\/184<\/a><\/p>"},{"title":"Python\u6570\u636e\u79d1\u5b66-(4)Matplotlib\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/023-matplotlib\/","pubDate":"Thu, 19 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/023-matplotlib\/","description":"<h1 id=\"1\u542f\u52a8\u65b9\u5f0f\">1\u3001\u542f\u52a8\u65b9\u5f0f<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><span style=\"display:flex;\"><span>%matplotlib inline\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1)\u5728\u666e\u901apython\u89e3\u91ca\u5668\/python\u811a\u672c\u4e2d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = np.linspace(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">10<\/span>,<span style=\"color:#ff0;font-weight:bold\">100<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>plt.plot(x, np.sin(x), <span style=\"color:#0ff;font-weight:bold\">&#39;-&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>plt.show()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2)\u5728ipython\u89e3\u91ca\u5668\u4e2d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>%matplotlib                   <span style=\"color:#007f7f\">#\u53ea\u9700\u58f0\u660e\u4e00\u6b21<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = np.linspace(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">10<\/span>,<span style=\"color:#ff0;font-weight:bold\">100<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>plt.plot(x, np.sin(x), <span style=\"color:#0ff;font-weight:bold\">&#39;-&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(3)\u5728jupyter\u4e2d               <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>%matplotlib inline            <span style=\"color:#007f7f\">#\u53ea\u9700\u58f0\u660e\u4e00\u6b21<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = np.linspace(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">10<\/span>,<span style=\"color:#ff0;font-weight:bold\">100<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>plt.plot(x, np.sin(x), <span style=\"color:#0ff;font-weight:bold\">&#39;-&#39;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u4e0b\u8ff0\u547d\u4ee4\u5747\u5728jupyter\u4e2d\u5b66\u4e60<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--MAST\u5dee\u5f02\u57fa\u56e0\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/030-mast\/","pubDate":"Fri, 10 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/030-mast\/","description":"<blockquote>\n<p>MAST\uff0c\u5168\u79f0Model-based Analysis of Single-cell Transcriptomics\uff0c\u662f2015\u5e74\u4e8eGenome Biology\u53d1\u8868\u7684R\u5305\u5de5\u5177\uff0c\u4e3b\u8981\u7528\u4e8e\u5355\u7ec6\u80de\u6570\u636e\u7684\u5dee\u5f02\u8868\u8fbe\u5206\u6790\u3002\u53c2\u770b\u5b98\u65b9\u6559\u7a0b\uff0c\u7b80\u5355\u8bb0\u5f55\u7528\u6cd5\u5982\u4e0b\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--Scissor\u8868\u578b\u76f8\u5173\u4e9a\u7fa4\u9274\u5b9a","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/031-scissor\/","pubDate":"Sun, 19 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/031-scissor\/","description":"<blockquote>\n<p>Scissor\u662f2022\u5e74\u53d1\u8868\u5728Nature Biotechnology\u7684\u4e00\u4e2a\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u5de5\u5177\u5305\u3002\u8be5\u5305\u901a\u8fc7\u7eb3\u5165Bulk\u8868\u8fbe\u4e0e\u8868\u578b\u6570\u636e\uff0c\u8bd5\u56fe\u5206\u6790\u4e0e\u6837\u672c\u8868\u578b(\u6b63\/\u8d1f)\u9ad8\u5ea6\u76f8\u5173\u7684\u5355\u7ec6\u80de\u4e9a\u7fa4\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--MARVEL\u5355\u7ec6\u80de\u53ef\u53d8\u526a\u5207","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/032-marvel-splicing\/","pubDate":"Mon, 06 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/032-marvel-splicing\/","description":"<blockquote>\n<p>R\u5305MARVEL\u662f\u7531\u725b\u6d25\u5927\u5b66MRC Weatherall\u5206\u5b50\u533b\u5b66\u7814\u7a76\u6240\u56e2\u961f\u5f00\u53d1\u7684\uff0c\u7528\u4e8e\u5206\u6790\u5355\u7ec6\u80de\u6c34\u5e73\u7684\u53ef\u53d8\u526a\u5207\u4e8b\u4ef6\u3002\u76f8\u5173\u6587\u7ae0\u4e8e2023\u5e741\u6708\u5728Nucleic Acids Research\u671f\u520a\u53d1\u8868\uff0c\u5728\u5176github\u9875\u9762\u5206\u4eab\u4e86MARVEL\u5de5\u5177\u7684\u5206\u6790\u6d41\u7a0b\uff0c\u5728\u6b64\u5b66\u4e60\u3001\u8bb0\u5f55\u5982\u4e0b\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--scCustomize\u5305\u6539\u8fdbSeurat\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/033-sccustomize\/","pubDate":"Sat, 11 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/033-sccustomize\/","description":"<blockquote>\n<p>scCustomize\u5305\u7531\u6765\u81ea\u6ce2\u58eb\u987f\u513f\u7ae5\u533b\u9662\/\u54c8\u4f5b\u533b\u5b66\u9662\u7684\u535a\u58eb\u540eSamuel E. Marsh\u7f16\u5199\u3002\u8be5\u5305\u57fa\u4e8eSeurat\uff0c\u63d0\u4f9b\u4e86\u82e5\u5e72\u4fbf\u6377\u3001\u9ad8\u6548\u7684\u53ef\u89c6\u5316\u65b9\u6cd5\u3002\u6839\u636e\u5b98\u65b9\u6559\u7a0b\u5b66\u4e60\u5176\u4e2d\u611f\u5174\u8da3\u7684\u7528\u6cd5\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--Asgard\u5355\u7ec6\u80de\u836f\u7269\u91cd\u5b9a\u5411","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/034-asgard\/","pubDate":"Sat, 18 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/034-asgard\/","description":"<blockquote>\n<p>\u6765\u81ea\u5bc6\u6b47\u6839\u5927\u5b66\u533b\u5b66\u9662\u7684\u8ba1\u7b97\u533b\u5b66\u4e0e\u751f\u7269\u4fe1\u606f\u5b66\u90e8\u7684LanaX.Garmire(\u62c9\u5a1c\u00b7\u52a0\u7c73\u5c14)\u56e2\u961f\u8fd1\u65e5\u4e8eNature Communication\u53d1\u8868\u4e00\u7bc7\u57fa\u4e8e\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u6570\u636e\u836f\u7269\u91cd\u5b9a\u5411\u7814\u7a76\u7684\u7814\u7a76\uff0c\u5e76\u5f00\u53d1\u4e86\u76f8\u5173R\u5305\u3002\u5982\u4e0b\u7b80\u5355\u5b66\u4e60\u4e0b\u8be5\u65b9\u6cd5\u7684\u539f\u7406\u4ee5\u53caR\u5305\u4f7f\u7528\u65b9\u6cd5\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--\u57fa\u4e8e\u6587\u732e\u7684\u7ec6\u80de\u7c7b\u578b\u6ce8\u91camarker","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/028-marker-annotation\/","pubDate":"Tue, 07 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/028-marker-annotation\/","description":"<blockquote>\n<p>\u6839\u636e\u5e73\u65f6\u7684\u6587\u732e\u9605\u8bfb\uff0c\u6c47\u603b\u524d\u4eba\u6ce8\u91ca\u5355\u7ec6\u80de\u6570\u636e\u7684\u7ec6\u80de\u7c7b\u578b\u6240\u4f7f\u7528\u7684marker gene\uff0c\u4ee5\u4f9b\u540e\u7eed\u7814\u7a76\u53c2\u8003\u3002\uff08\u6301\u7eed\u66f4\u65b0\uff09<\/p><\/blockquote>\n<h2 id=\"1tumor\">1\u3001Tumor<\/h2>\n<ul>\n<li>\n<p><strong>B cell<\/strong>\uff1aCD79A*[1-3]<em>\uff0cCD79B<\/em>[1,3]<em>\uff0cCD19<\/em>[1,3]<em>\uff0cMS4A1<\/em>[2,3]<em>\uff0cIGKC<\/em>[1]<em>\uff0cMZB1<\/em>[2]*<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--scSTAR\u6316\u6398\u5206\u7ec4\u6837\u672c\u7ec6\u80de\u4e9a\u578b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/035-scstar\/","pubDate":"Mon, 17 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/035-scstar\/","description":"<blockquote>\n<p>scSTAR\u662f\u7531\u590d\u65e6\u5927\u5b66\u9644\u5c5e\u4e2d\u5c71\u533b\u9662\u90dd\u6d01\u7814\u7a76\u5458\u7b49\u4eba\u5f00\u53d1\u7684\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177\u5305\uff0c\u4e8e2023\u5e742\u6708\u53d1\u8868\u5728Briefings in Bioinformatics\u3002\u8be5\u5305\u66f4\u52a0\u51c6\u786e\u5730\u5b9e\u73b0\u540c\u4e00\u7ec6\u80de\u7c7b\u578b\u5728\u4e0d\u540c\u7ec4(\u6b63\u5e38\/\u75be\u75c5)\u7684\u53d8\u5316\u60c5\u51b5\u4e0b\uff0c\u7ec6\u80de\u5185\u90e8\u4e9a\u578b\u5f02\u8d28\u6027\u7684\u53d8\u5316\u6355\u6349\uff0c\u5728\u5355\u7ec6\u80de\u6570\u636e\u6316\u6398\u9886\u57df\u63d0\u4f9b\u65b0\u7684\u89c6\u89d2\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--NicheNet\u7ec6\u80de\u901a\u8baf\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/029-nichenet\/","pubDate":"Thu, 09 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/029-nichenet\/","description":"<blockquote>\n<ul>\n<li>\u539f\u59cb\u8bba\u6587\uff1ahttps:\/\/www.nature.com\/articles\/s41592-019-0667-5<\/li>\n<li>\u5b98\u65b9\u624b\u518c\uff1ahttps:\/\/github.com\/saeyslab\/nichenetr<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#34;devtools&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>devtools::install_github(<span style=\"color:#0ff;font-weight:bold\">&#34;saeyslab\/nichenetr&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><\/blockquote>\n<h2 id=\"0\u539f\u7406\u7b80\u4ecb\">0\u3001\u539f\u7406\u7b80\u4ecb<\/h2>\n<p>\uff081\uff09NicheNet\u662f2020\u5e74\u4e8eNature method\u63d0\u51fa\u7684\u5355\u7ec6\u80de\u6570\u636e\u7ec6\u80de\u901a\u8baf\u5206\u6790\u5de5\u5177\u3002\u76f8\u6bd4\u4e8ecellphoneDB\u7b49\u5de5\u5177\uff0cNicheNet\u8fdb\u4e00\u6b65\u8003\u8651\u4e86\u53d7\u4f53\u88ab\u6fc0\u6d3b\u540e\u7684\u4fe1\u53f7\u4f20\u5bfc\u4e0e\u4e0b\u6e38\u9776\u57fa\u56e0\u7684\u5dee\u5f02\u8868\u8fbe\u60c5\u51b5\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--celldancer\u7ec6\u80de\u901f\u7387\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/036-celldancer\/","pubDate":"Sat, 22 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/036-celldancer\/","description":"<blockquote>\n<p>cellDancer\u662f\u7f8e\u56fd\u4f11\u65af\u987f\u536b\u7406\u516c\u4f1a\u7814\u7a76\u6240\u7684\u52a9\u7406\u6559\u6388Guangyu Wang\u56e2\u961f\u5f00\u53d1\u7684RNA\u901f\u7387\u5206\u6790\u65b0\u5de5\u5177\uff0c\u4e8e2023\u5e744\u6708\u53d1\u8868\u4e8enature biotechnology\u3002\u8be5\u5de5\u5177\u57fa\u4e8e\u6df1\u5ea6\u5b66\u4e60\u6846\u67b6\u9884\u6d4b\u7ec6\u80de\u7279\u5f02\u7684\u901f\u7387\u53c2\u6570(\u03b1, \u03b2 and \u03b3)\uff0c\u76f8\u8f83\u4e8e\u4e4b\u524d\u7684scvelo\u7b49RNA\u901f\u7387\u5206\u6790\u5de5\u5177\u53ef\u6709\u6548\u9884\u6d4b transcriptional boost, multi-lineage forward, multi-lineage backward\u7b49\u590d\u6742\u60c5\u51b5\u4e0b\u7684\u5355\u7ec6\u80de\u6570\u636e\u53d1\u80b2\u9884\u6d4b\u5206\u6790\u3002<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-pandas\u7ed8\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/030-pandas-plotting\/","pubDate":"Sat, 30 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/030-pandas-plotting\/","description":"<blockquote>\n<p><a href=\"https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.plot.html\">https:\/\/pandas.pydata.org\/docs\/reference\/api\/pandas.DataFrame.plot.html<\/a><\/p>\n<p>pandas\u7684dataframe\u81ea\u5e26\u4e00\u4e9b\u7ed8\u56fe\u8bed\u6cd5\u7528\u4ee5\u7b80\u5355\u7684\u8868\u683c\u6570\u636e\u53ef\u89c6\u5316\uff0c\u9002\u5408\u4e8e\u6570\u636e\u7684\u521d\u6b65\u63a2\u7d22\u3001\u5206\u6790<\/p><\/blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1barplot\u67f1\u72b6\u56fe\">1\u3001barplot\u67f1\u72b6\u56fe<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>df = pd.DataFrame({<span style=\"color:#0ff;font-weight:bold\">&#39;lab&#39;<\/span>:[<span style=\"color:#0ff;font-weight:bold\">&#39;A&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;B&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;C&#39;<\/span>], \n<\/span><\/span><span style=\"display:flex;\"><span>                   <span style=\"color:#0ff;font-weight:bold\">&#39;val&#39;<\/span>:[<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">30<\/span>, <span style=\"color:#ff0;font-weight:bold\">20<\/span>]})\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \tlab\tval<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0\tA\t10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1\tB\t30<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2\tC\t20<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = df.plot.bar(x=<span style=\"color:#0ff;font-weight:bold\">&#39;lab&#39;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#39;val&#39;<\/span>, rot=<span style=\"color:#ff0;font-weight:bold\">0<\/span>, color=<span style=\"color:#0ff;font-weight:bold\">&#34;green&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220730145626960.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20220730145626960.png\" alt=\"image-20220730145626960\" style=\"zoom: 67%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>speed = [<span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">17.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">40<\/span>, <span style=\"color:#ff0;font-weight:bold\">48<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>lifespan = [<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">8<\/span>, <span style=\"color:#ff0;font-weight:bold\">70<\/span>, <span style=\"color:#ff0;font-weight:bold\">1.5<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>index = [<span style=\"color:#0ff;font-weight:bold\">&#39;snail&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;pig&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;elephant&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;rabbit&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u7c7b\u522b\u540d\u4e3aindex<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>df = pd.DataFrame({<span style=\"color:#0ff;font-weight:bold\">&#39;speed&#39;<\/span>: speed,\n<\/span><\/span><span style=\"display:flex;\"><span>                   <span style=\"color:#0ff;font-weight:bold\">&#39;lifespan&#39;<\/span>: lifespan}, index=index)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\t\t  speed\tlifespan<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#snail\t  0.1\t2.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#pig\t  17.5\t8.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#elephant 40.0\t70.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#rabbit\t  48.0\t1.5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = df.plot.bar(rot=<span style=\"color:#ff0;font-weight:bold\">0<\/span>)              <span style=\"color:#007f7f\">#\u6240\u6709\u5217(\u5982\u4e0b\u56fe)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = df.plot.bar(rot=<span style=\"color:#ff0;font-weight:bold\">0<\/span>,stacked=<span style=\"color:#fff;font-weight:bold\">True<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span>ax = df[<span style=\"color:#0ff;font-weight:bold\">&#34;speed&#34;<\/span>].plot.bar(rot=<span style=\"color:#ff0;font-weight:bold\">45<\/span>)    <span style=\"color:#007f7f\">#\u6307\u5b9a\u5217<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = df.plot.bar(\n<\/span><\/span><span style=\"display:flex;\"><span>    rot=<span style=\"color:#ff0;font-weight:bold\">0<\/span>, subplots=<span style=\"color:#fff;font-weight:bold\">True<\/span>, layout=(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>    color={<span style=\"color:#0ff;font-weight:bold\">&#34;speed&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;red&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;lifespan&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;green&#34;<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220730153508146.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20220730153508146.png\" alt=\"image-20220730153508146\" style=\"zoom: 80%;\" \/>\n<blockquote>\n<p><code>pandas.DataFrame.plot.barh()<\/code>\u652f\u6301\u7ed8\u5236\u6a2a\u5411\u7684\u67f1\u72b6\u56fe\uff08Dataframe\u6570\u636e\u5185\u5bb9\u9700\u8981\u662f\u6a2a\u5411\u7684\uff09<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-seaborn(sns)\u7ed8\u56fe\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/031-seaborn\/","pubDate":"Fri, 04 Apr 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/031-seaborn\/","description":"<ul>\n<li><strong>\u5b98\u65b9\u6559\u7a0b\u94fe\u63a5<\/strong>\uff1ahttps:\/\/seaborn.pydata.org\/tutorial.html<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> seaborn <span style=\"color:#fff;font-weight:bold\">as<\/span> sns\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-theme\u4e3b\u9898\u8bbe\u7f6e\">1. theme\u4e3b\u9898\u8bbe\u7f6e<\/h1>\n<ul>\n<li>\u793a\u4f8b\u5c55\u793a\u6548\u679c\u89c1\u94fe\u63a5<\/li>\n<\/ul>\n<p><strong>context<\/strong>: \u7528\u4e8e\u8c03\u6574\u6574\u4f53\u5b57\u4f53\u548c\u6807\u6ce8\u7684\u5927\u5c0f<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--sccode\u7efc\u5408\u5dee\u5f02\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/037-sccode\/","pubDate":"Sun, 30 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/037-sccode\/","description":"<blockquote>\n<p><strong>scCODE<\/strong>( single-cell consensus optimization of differentially expressed gene detection)\u662f\u7531\u590d\u65e6\u5927\u5b66\u9644\u5c5e\u91d1\u5c71\u533b\u9662\u90b9\u6b23\u7b49\u4eba\u5f00\u53d1\u7684R\u5305\u5de5\u5177\uff0c\u4e8e2022\u5e7412\u6708\u53d1\u8868\u4e8eBriefing in Bioinformatics\uff1b\u8be5\u5de5\u5177\u5bf9\u591a\u79cd\u5dee\u5f02\u57fa\u56e0\u5206\u6790\u7b56\u7565\u8fdb\u884c\u4e86\u96c6\u6210\u3001\u6574\u5408\uff0c\u7528\u4e8e\u9274\u5b9a\u9c81\u68d2\u6027\u7684\u5355\u7ec6\u80de\u5dee\u5f02\u57fa\u56e0\u3002\u7528\u6cd5\u6bd4\u8f83\u7b80\u5355\uff0c\u7b80\u5355\u8bb0\u5f55\u5982\u4e0b\u3002<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-statannotations\u5305\u4e3asns\u7ed8\u56fe\u6ce8\u91ca\u663e\u8457\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/032-statannotations\/","pubDate":"Mon, 14 Jul 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/032-statannotations\/","description":"<p>\u53c2\u8003<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/trevismd\/statannotations\/blob\/master\/usage\/example.ipynb\">https:\/\/github.com\/trevismd\/statannotations\/blob\/master\/usage\/example.ipynb<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/trevismd\/statannotations\/tree\/master\">https:\/\/github.com\/trevismd\/statannotations\/tree\/master<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> seaborn <span style=\"color:#fff;font-weight:bold\">as<\/span> sns\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Box plots -- sns.boxplot()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Bar plots -- sns.barplot()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Swarm plots -- sns.swarmplot()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Strip plots -- sns.stripplot()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Violin plots -- sns.violinplot()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Supporting FacetGrid -- sns.catplot(col=..., row=...)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> statannotations.Annotator <span style=\"color:#fff;font-weight:bold\">import<\/span> Annotator\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-basic-use\">1. Basic use<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = <span style=\"color:#0ff;font-weight:bold\">&#34;day&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>y = <span style=\"color:#0ff;font-weight:bold\">&#34;total_bill&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>order = [<span style=\"color:#0ff;font-weight:bold\">&#39;Sun&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;Thur&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;Fri&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;Sat&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>ax = sns.boxplot(data=df, x=x, y=y, order=order)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>pairs = [(<span style=\"color:#0ff;font-weight:bold\">&#34;Thur&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Fri&#34;<\/span>), (<span style=\"color:#0ff;font-weight:bold\">&#34;Thur&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Sat&#34;<\/span>), (<span style=\"color:#0ff;font-weight:bold\">&#34;Fri&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Sun&#34;<\/span>)]\n<\/span><\/span><span style=\"display:flex;\"><span>annot = Annotator(ax, pairs, data=df, x=x, y=y, order=order)\n<\/span><\/span><span style=\"display:flex;\"><span>annot.configure(test=<span style=\"color:#0ff;font-weight:bold\">&#39;t-test_ind&#39;<\/span>, text_format=<span style=\"color:#0ff;font-weight:bold\">&#39;star&#39;<\/span>, loc=<span style=\"color:#0ff;font-weight:bold\">&#39;outside&#39;<\/span>, verbose=<span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># annot.apply_test()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ax, test_results = annot.annotate()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax, test_results = annot.apply_and_annotate()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>Tips: sns.plot\u7684data, x, y, order\u7b49\u7ed8\u56fe\u53c2\u6570\u9700\u8981\u4e0eAnnotator\u7684\u4fdd\u6301\u4e00\u81f4\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--ShinyCell\u4ea4\u4e92\u5f0f\u5c55\u793a\u5355\u7ec6\u80de\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/040-shinycell\/","pubDate":"Mon, 07 Aug 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/040-shinycell\/","description":"<blockquote>\n<p>ShinyCell\u5305\u662f\u7531\u675c\u514b-\u65b0\u52a0\u5761\u56fd\u7acb\u5927\u5b66\u533b\u5b66\u9662\u7684John F. Ouyang\u56e2\u961f\u5f00\u53d1\u7684\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177\u5305\uff0c\u5b9e\u73b0\u57fa\u4e8eshiny\u7f51\u9875\u4ea4\u4e92\u5f0f\u5c55\u793a\u5355\u7ec6\u80de\u6570\u636e\uff1b\u4e8e2021\u5e743\u6708\u53d1\u8868\u4e8eBioinformatics\u6742\u5fd7\u3002\u5982\u6587\u7ae0\u4e2d\u4ecb\u7ecd\uff0cShinyCell\u76f8\u6bd4\u540c\u7c7b\u5de5\u5177\u5177\u6709\u591a\u4e2a\u4f18\u52bf\uff0c\u4f8b\u5982\u76f4\u89c2\u7684side-by-side\u7684\u964d\u7ef4\u53ef\u89c6\u5316\u65b9\u5f0f\uff0chdf5\u683c\u5f0f\u4fdd\u5b58\u8868\u8fbe\u77e9\u9635\u4ece\u800c\u8bfb\u53d6\u5feb\u901f\uff0c\u652f\u6301pdf\/png\u4fdd\u5b58\u56fe\u7247\uff0c\u652f\u6301\u591a\u79cd\u5e38\u89c1\u5355\u7ec6\u80de\u6570\u636e\u7c7b\u578b\u7b49\u3002\u53c2\u8003\u5176\u6559\u7a0b\u6587\u6863\uff0c\u5b66\u4e60\u8bb0\u5f55\u5982\u4e0b\u3002<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-sns\u7ed8\u5236\u70ed\u56fe&\u805a\u7c7b\u70ed\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/033-seaborn-heatmap\/","pubDate":"Mon, 28 Jul 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/033-seaborn-heatmap\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> seaborn <span style=\"color:#fff;font-weight:bold\">as<\/span> sns\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-snsheatmap\">1. sns.heatmap<\/h1>\n<ul>\n<li>\u7ed8\u5236\u7684\u70ed\u56fe\u662f\u56fa\u5b9a\u884c\u5217\u7684\u8868\u683c\uff0c\u4e0d\u53ef\u4ee5\u8c03\u6574\u987a\u5e8f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># glue = sns.load_dataset(&#34;glue&#34;).pivot(index=&#34;Model&#34;, columns=&#34;Task&#34;, values=&#34;Score&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># https:\/\/github.com\/mwaskom\/seaborn-data\/blob\/master\/glue.csv<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>glue = pd.read_csv(<span style=\"color:#0ff;font-weight:bold\">&#34;.\/data\/glue.csv&#34;<\/span>).pivot(index=<span style=\"color:#0ff;font-weight:bold\">&#34;Model&#34;<\/span>, columns=<span style=\"color:#0ff;font-weight:bold\">&#34;Task&#34;<\/span>, values=<span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>glue.head()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Task         CoLA  MNLI  MRPC  QNLI   QQP   RTE  SST-2  STS-B<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Model                                                        <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BERT         60.5  86.7  89.3  92.7  72.1  70.1   94.9   87.6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiLSTM       11.6  65.6  81.8  74.6  62.5  57.4   82.8   70.3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiLSTM+Attn  18.6  67.6  83.9  74.3  60.1  58.4   83.0   72.8<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiLSTM+CoVe  18.5  65.4  78.7  70.8  60.6  52.7   81.9   64.4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiLSTM+ELMo  32.1  67.2  84.7  75.5  61.1  57.4   89.3   70.3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>plt.figure(figsize=(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>sns.heatmap(glue)\n<\/span><\/span><span style=\"display:flex;\"><span>plt.show()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2) \u4e3a\u5355\u5143\u683c\u6dfb\u52a0\u6ce8\u91ca\u6570\u636e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>plt.figure(figsize=(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>sns.heatmap(glue, annot=<span style=\"color:#fff;font-weight:bold\">True<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#007f7f\"># fmt=&#34;.1f&#34;  #  \u53ef\u4ee5\u8bbe\u7f6e\u6570\u636e\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#007f7f\"># annot=glue.rank(axis=1)  # \u4e5f\u53ef\u4ee5\u81ea\u5b9a\u6ce8\u91ca\u5185\u5bb9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>            )\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250728213912620.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250728213912620.png\" alt=\"image-20250728213912620\" style=\"zoom: 80%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3) \u8bbe\u7f6e\u8fb9\u6846<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>plt.figure(figsize=(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>sns.heatmap(glue, annot=<span style=\"color:#fff;font-weight:bold\">True<\/span>, linewidth=<span style=\"color:#ff0;font-weight:bold\">.5<\/span>, linecolor=<span style=\"color:#0ff;font-weight:bold\">&#34;white&#34;<\/span>, square=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4) \u6307\u5b9a\u8272\u57df\u4ee5\u53ca\u6620\u5c04\u8303\u56f4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>plt.figure(figsize=(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>sns.heatmap(glue, cmap=<span style=\"color:#0ff;font-weight:bold\">&#34;crest&#34;<\/span>, vmin=<span style=\"color:#ff0;font-weight:bold\">50<\/span>, vmax=<span style=\"color:#ff0;font-weight:bold\">100<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6700\u540e\u4e5f\u53ef\u4ee5\u901a\u8fc7cbar\u7cfb\u5217\u53c2\u6570\u8c03\u6574\u989c\u8272\u6761<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250728214104341.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250728214104341.png\" alt=\"image-20250728214104341\"  \/>\n<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--Seurat5\u57fa\u7840\u7528\u6cd5","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/041-seurat5\/","pubDate":"Tue, 17 Sep 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/041-seurat5\/","description":"<blockquote>\n<p>Seurat V5\u7248\u672c\u6709\u4e00\u6bb5\u65f6\u95f4\u4e86\uff0c\u7531\u4e8e\u65f6\u95f4\u539f\u56e0\u672a\u6765\u5f97\u53ca\u4e86\u89e3\u3002\u73b0\u6839\u636e\u5176\u5b98\u65b9\u6587\u6863\u7b80\u5355\u6574\u7406\u5176\u7528\u6cd5\uff0c\u4e0eV4\u6bd4\u8f83\u7c7b\u4f3c\u7684\u5730\u65b9\u5c31\u4e0d\u591a\u53d9\u8ff0\u4e86\u3002\u6b64\u5916\uff0cV5\u7684\u4eae\u70b9\u4e4b\u4e00\u8fd8\u5728\u4e8e\u5355\u7ec6\u80de\u591a\u7ec4\u5b66\u7684\u6574\u5408\u5206\u6790\uff0c\u6b64\u6b21\u5c31\u4e0d\u505a\u8bb0\u5f55\u4e86\u3002\uff08PS\uff1a\u4e2d\u79cb\u5feb\u4e50~\uff09<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-sns\u7ed8\u5236\u56de\u5f52\u70b9\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/034-seaborn-regression\/","pubDate":"Mon, 04 Aug 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/034-seaborn-regression\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> seaborn <span style=\"color:#fff;font-weight:bold\">as<\/span> sns\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-snsregplot\">1. sns.regplot<\/h1>\n<ul>\n<li>\u9002\u5408\u5c55\u793a\u7b80\u5355\u7684\u4e24\u7ec4\u5173\u7cfb<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>mpg = sns.load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#39;mpg&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1) \u4e00\u822c\u7528\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.regplot(data=mpg, x=<span style=\"color:#0ff;font-weight:bold\">&#34;weight&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;acceleration&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sns.regplot(data=mpg, x=&#34;weight&#34;, y=&#34;acceleration&#34;, ci=None) # \u4e0d\u663e\u793a\u7f6e\u4fe1\u533a\u95f4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sns.regplot(data=mpg, x=&#34;weight&#34;, y=&#34;acceleration&#34;, ci=99)   # \u81ea\u5b9a\u4e49\u7f6e\u4fe1\u533a\u95f4<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250804214851272.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250804214851272.png\" alt=\"image-20250804214851272\" style=\"zoom: 67%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2) \u4fee\u6539scatter\u70b9\u4e0eline\u7ebf\u7684\u663e\u793a\u7ec6\u8282<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.regplot(\n<\/span><\/span><span style=\"display:flex;\"><span>    data=mpg, x=<span style=\"color:#0ff;font-weight:bold\">&#34;weight&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;acceleration&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    scatter_kws={\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;color&#39;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#39;blue&#39;<\/span>,   <span style=\"color:#007f7f\"># \u6563\u70b9\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;s&#39;<\/span>: <span style=\"color:#ff0;font-weight:bold\">50<\/span>,           <span style=\"color:#007f7f\"># \u70b9\u7684\u5927\u5c0f\uff08\u9762\u79ef\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;alpha&#39;<\/span>: <span style=\"color:#ff0;font-weight:bold\">0.6<\/span>,      <span style=\"color:#007f7f\"># \u900f\u660e\u5ea6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;marker&#39;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#39;o&#39;<\/span>,     <span style=\"color:#007f7f\"># \u70b9\u7684\u6837\u5f0f\uff0c\u6bd4\u5982 &#39;o&#39;, &#39;x&#39;, &#39;^&#39;, etc.<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;linewidths&#39;<\/span>: <span style=\"color:#ff0;font-weight:bold\">0<\/span>      <span style=\"color:#007f7f\"># \u70b9\u7684\u8f6e\u5ed3\u7ebf<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.regplot(\n<\/span><\/span><span style=\"display:flex;\"><span>    data=mpg, x=<span style=\"color:#0ff;font-weight:bold\">&#34;weight&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;acceleration&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    line_kws={\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;color&#39;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#39;red&#39;<\/span>,     <span style=\"color:#007f7f\"># \u56de\u5f52\u7ebf\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;linewidth&#39;<\/span>: <span style=\"color:#ff0;font-weight:bold\">2<\/span>,     <span style=\"color:#007f7f\"># \u7ebf\u5bbd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;linestyle&#39;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#39;--&#39;<\/span>,  <span style=\"color:#007f7f\"># \u7ebf\u578b\uff1a&#39;-&#39;\u3001&#39;--&#39;\u3001&#39;:&#39;\u3001&#39;-.&#39; \u7b49<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#0ff;font-weight:bold\">&#39;alpha&#39;<\/span>: <span style=\"color:#ff0;font-weight:bold\">0.9<\/span>        <span style=\"color:#007f7f\"># \u56de\u5f52\u7ebf\u900f\u660e\u5ea6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250804215207233.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250804215207233.png\" alt=\"image-20250804215207233\" style=\"zoom:80%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3) \u5bf9\u5177\u6709&#34;\u79bb\u6563&#34;\u6027\u8d28\u7684\u53d8\u91cf(\u6570\u636e\u7c7b\u578b\u4ecd\u662ffloat\/int), \u4e3a\u907f\u514d\u91cd\u53e0\u53ef\u4ee5\u8bbe\u7f6e\u6296\u52a8<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.regplot(data=mpg, x=<span style=\"color:#0ff;font-weight:bold\">&#34;cylinders&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;weight&#34;<\/span>, x_jitter=<span style=\"color:#ff0;font-weight:bold\">.15<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4) \u7ebf\u7684\u62df\u5408\u65b9\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.regplot(data=mpg, x=<span style=\"color:#0ff;font-weight:bold\">&#34;weight&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;mpg&#34;<\/span>, order=<span style=\"color:#ff0;font-weight:bold\">2<\/span>)  <span style=\"color:#007f7f\"># \u62df\u5408\u9ad8\u9636\u51fd\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sns.regplot(data=mpg, x=&#34;horsepower&#34;, y=&#34;weight&#34;, robust=True)  # \u4e0d\u53d7\u79bb\u7fa4\u70b9\u5f71\u54cd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sns.regplot(data=mpg, x=&#34;horsepower&#34;, y=&#34;mpg&#34;, lowess=True)     # \u62df\u5408\u5e73\u6ed1\u66f2\u7ebf<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250804215520321.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250804215520321.png\" alt=\"image-20250804215520321\" style=\"zoom:80%;\" \/>\n<h1 id=\"2-snslmplot\">2. sns.lmplot<\/h1>\n<ul>\n<li>\u9002\u7528\u4e8e\u5206\u7ec4\u7ebf\u6027\u56de\u5f52, \u5373\u5206\u9762\u7ed8\u56fe<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>tips = sns.load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#34;tips&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>sns.lmplot(x=<span style=\"color:#0ff;font-weight:bold\">&#34;total_bill&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;tip&#34;<\/span>, hue=<span style=\"color:#0ff;font-weight:bold\">&#34;sex&#34;<\/span>, data=tips)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250804215915652.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250804215915652.png\" alt=\"image-20250804215915652\" style=\"zoom: 67%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>sns.lmplot(x=<span style=\"color:#0ff;font-weight:bold\">&#34;total_bill&#34;<\/span>, y=<span style=\"color:#0ff;font-weight:bold\">&#34;tip&#34;<\/span>, col=<span style=\"color:#0ff;font-weight:bold\">&#34;day&#34;<\/span>, data=tips,\n<\/span><\/span><span style=\"display:flex;\"><span>           facet_kws=<span style=\"color:#fff;font-weight:bold\">dict<\/span>(sharex=<span style=\"color:#fff;font-weight:bold\">False<\/span>, sharey=<span style=\"color:#fff;font-weight:bold\">False<\/span>),)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250804220011872.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/img01image-20250804220011872.png\" alt=\"image-20250804220011872\"  \/>\n<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--CELLxGENE\u6570\u636e\u5e93","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/042-cellxgene\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/042-cellxgene\/","description":"<blockquote>\n<p>\u7f51\u7ad9\uff1ahttps:\/\/cellxgene.cziscience.com\/<\/p>\n<p>API\uff1ahttps:\/\/chanzuckerberg.github.io\/cellxgene-census\/<\/p>"},{"title":"Python-\u53ef\u89c6\u5316-matplotlib\u9047\u89c1\u7684\u5751","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/035-matplotlib-bugs\/","pubDate":"Tue, 31 Mar 2026 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/035-matplotlib-bugs\/","description":"<blockquote>\n<p>\u5728linux\u4e2d\u4f7f\u7528matplotlib\uff08\u5305\u62ecsns\uff09\u7ed8\u56fe\u4fdd\u5b58\u540e\uff0c\u4e0b\u8f7d\u5230window\u91ccAdobe AI\u6253\u5f00\u65f6\uff0c\u9047\u5230\u4e86\u8fd9\u6837\u7684\u62a5\u9519\u3002\u5982\u4e0b\u63a2\u7d22\u7684\u89e3\u51b3\u65b9\u6cd5\u8bb0\u5f55\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--scVI\u53bb\u9664\u6279\u6b21\u6548\u5e94","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/043-scvi\/","pubDate":"Tue, 05 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/043-scvi\/","description":"<p>scVI (single-cell variational inference)\u662f2018\u5e74\u53d1\u8868\u7684\u4e00\u9879\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177\u3002\u5b83\u4e3b\u8981\u57fa\u4e8eVAE\u53d8\u5206\u81ea\u7f16\u7801\u5668\u7684\u601d\u60f3\uff0c\u8ba1\u7b97\u53bb\u9664\u6279\u6b21\u6548\u5e94\u540e\u7684\u7ec6\u80de\u4f4e\u7ef4\u7a7a\u95f4\u8868\u793a\u3002\u800c\u540e\u4e8e2022\u5e74\u88ab\u6574\u5408\u5230\u5355\u7ec6\u80de\u7ec4\u5b66\u5206\u6790\u5de5\u5177\u5305scvi-tool\u4e2d\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--sccoda\u7ec6\u80de\u7ec4\u6210\u6bd4\u8f83","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/038-sccoda\/","pubDate":"Sun, 30 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/038-sccoda\/","description":"<blockquote>\n<p><strong>scCODA<\/strong>(single-cell compositional data analysis)\u662f\u7531\u5fb7\u56fd\u73af\u5883\u5065\u5eb7\u7814\u7a76\u4e2d\u5fc3\u8ba1\u7b97\u751f\u7269\u5b66\u7814\u7a76\u6240M B\u00fcttner\u7b49\u4eba\u57fa\u4e8epython\u5f00\u53d1\u7684\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790\u5de5\u5177\uff0c\u4e8e2021\u5e7411\u6708\u53d1\u8868\u4e8eNature Communication\uff1b\u4e3b\u8981\u7528\u4e8e\u5206\u6790\u4e0d\u540c\u5206\u7ec4\u6837\u672c\u7684\u7ec6\u80de\u7ec4\u6210\u7684\u5dee\u5f02\u3002\u53c2\u8003\u5b98\u65b9\u6587\u6863\u8bb0\u5f55\u7528\u6cd5\u5982\u4e0b\u3002<\/p>"},{"title":"\u5355\u7ec6\u80de\u5206\u6790\u5de5\u5177--COSG\u9274\u5b9amarker\u57fa\u56e0","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/039-cosg\/","pubDate":"Sat, 01 Jul 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/039-cosg\/","description":"<blockquote>\n<p><strong>COSG<\/strong>(COSine similarity-based marker Gene identification)\u662f\u7531\u6765\u81ea\u54c8\u4f5b\u533b\u5b66\u9662\u548cBroad\u7814\u7a76\u6240\u535a\u540eMing Dai\u7b49\u4eba\u5f00\u53d1\uff0c\u65e8\u5728\u4ece\u4f59\u5f26\u76f8\u4f3c\u5ea6\u7684\u89d2\u5ea6\u9274\u5b9acluster\u7684marker gene\uff0c\u4e8e2021\u5e7412\u6708\u88abBriefings in Bioinformatics\u63a5\u6536\u3002\u76ee\u524d\u5df2\u5c06\u6b64\u65b9\u6cd5\u5206\u522b\u5305\u88c5\u4e3aR\u5305\u4e0ePython\u5305\uff0c\u5206\u522b\u5bf9\u5e94Seurat\u4e0eScanny\u5206\u6790\u6d41\u7a0b\u3002<\/p>"},{"title":"\u5dee\u5f02\u5206\u6790R\u5305-DESeq2+edgeR+limma","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/045-deseq2-edger-limma\/","pubDate":"Sat, 11 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/045-deseq2-edger-limma\/","description":"<p>\u5728\u5bf9\u8f6c\u5f55\u7ec4\u6570\u636e\u5206\u6790\u65f6\uff0c\u5206\u7ec4\u6bd4\u8f83\u7684\u5dee\u5f02\u5206\u6790\u524d\u63d0\u65f6\u83b7\u5f97\u6d4b\u5e8f\u8868\u8fbe\u77e9\u9635\u3002<\/p>\n<p>\u6839\u636e\u6d4b\u5e8f\u6280\u672f\u5206\u4e3a\u4e24\u79cd\uff0c\u5bf9\u5e94\u7684\u5206\u6790R\u5305\u5982\u4e0b\u6240\u793a\u3002<\/p>\n<ul>\n<li>RNAseq\u7684\u539f\u59cbcount\u8868\u8fbe\u77e9\u9635\n<ul>\n<li>DESeq2<\/li>\n<li>edgeR<\/li>\n<li>limma<\/li>\n<\/ul>\n<\/li>\n<li>\u82af\u7247array\u6807\u51c6\u5316\u540e\u7684\u8868\u8fbe\u77e9\u9635\n<ul>\n<li>limma<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h1 id=\"1\u793a\u4f8bcount\u8868\u8fbe\u77e9\u9635\">1\u3001\u793a\u4f8bcount\u8868\u8fbe\u77e9\u9635<\/h1>\n<p>\u5982\u4e0b\u4f7f\u7528TCGAbiolinks\u5305\u4e0b\u8f7d\u51719\u4e2a\u764c\u75c7\u6837\u672c\u300135\u4e2a\u6b63\u5e38\u6837\u672c\u7684\u8868\u8fbe\u77e9\u9635\uff1b\u5176\u4e2d\u6d89\u53ca\u52308\u5bf9\u914d\u5bf9\u6837\u672c\uff08tumor\u4e0enormal\u6765\u81ea\u540c\u4e00\u75c5\u4eba\uff09<\/p>"},{"title":"TCGAbiolinks\u5305-TCGA\u6570\u636e\u4e0b\u8f7d\u4e0e\u5dee\u5f02\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/046-tcgabiolinks\/","pubDate":"Sat, 30 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/046-tcgabiolinks\/","description":"<p><code>TCGAbiolinks<\/code>\u5305\u662f\u4e00\u7ad9\u5f0f\u5206\u6790TCGA\u6570\u636e\u7684R\u5305\u5de5\u5177\uff0c\u5b83\u96c6\u6210\u4e86TCGA\u6570\u636e\u4e0b\u8f7d\u3001\u5206\u6790\u3001\u53ef\u89c6\u5316\u7684\u5168\u90e8\u6d41\u7a0b\u3002\u6b64\u6b21\u7cfb\u5217\u7b14\u8bb0\u4e3b\u8981\u8ddf\u7740 TCGAbiolinks\u5e2e\u52a9\u6587\u6863\u91cd\u65b0\u5b66\u4e60\u4e0bTCGA\u6570\u636e\u6316\u6398\u6d41\u7a0b\u3002<\/p>"},{"title":"\u8868\u8fbe\u77e9\u9635TPM,FPKM\u6807\u51c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/047-tpm-fpkm-normalization\/","pubDate":"Sat, 30 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/047-tpm-fpkm-normalization\/","description":"<h1 id=\"1\u8ba1\u7b97\u516c\u5f0f\">1\u3001\u8ba1\u7b97\u516c\u5f0f<\/h1>\n<table>\n  <thead>\n      <tr>\n          <th style=\"text-align: center\"><\/th>\n          <th style=\"text-align: center\">sample 1<\/th>\n          <th style=\"text-align: center\">sample 2<\/th>\n          <th style=\"text-align: center\">&hellip;&hellip;..<\/th>\n          <th style=\"text-align: center\">sample k<\/th>\n      <\/tr>\n  <\/thead>\n  <tbody>\n      <tr>\n          <td style=\"text-align: center\">Gene 1<\/td>\n          <td style=\"text-align: center\">10<\/td>\n          <td style=\"text-align: center\">12<\/td>\n          <td style=\"text-align: center\"><\/td>\n          <td style=\"text-align: center\">30<\/td>\n      <\/tr>\n      <tr>\n          <td style=\"text-align: center\">Gene 2<\/td>\n          <td style=\"text-align: center\">20<\/td>\n          <td style=\"text-align: center\">25<\/td>\n          <td style=\"text-align: center\"><\/td>\n          <td style=\"text-align: center\">60<\/td>\n      <\/tr>\n      <tr>\n          <td style=\"text-align: center\">&hellip;&hellip;<\/td>\n          <td style=\"text-align: center\">&hellip;<\/td>\n          <td style=\"text-align: center\">&hellip;<\/td>\n          <td style=\"text-align: center\">&hellip;<\/td>\n          <td style=\"text-align: center\">&hellip;<\/td>\n      <\/tr>\n      <tr>\n          <td style=\"text-align: center\">Gene n<\/td>\n          <td style=\"text-align: center\">0<\/td>\n          <td style=\"text-align: center\">0<\/td>\n          <td style=\"text-align: center\">&hellip;<\/td>\n          <td style=\"text-align: center\">1<\/td>\n      <\/tr>\n  <\/tbody>\n<\/table>\n<p>\u5bf9\u4e8e(n*k)\u8868\u8fbe\u77e9\u9635\u4e2dk\u4e2a\u6837\u672c\u7684n\u4e2a\u57fa\u56e0\u7684count\u8868\u8fbe\u6570\u636e\u3002<\/p>\n<p>\u5728\u4efb\u610f\u6837\u672c\uff08\u5217\uff09\u4e2d\uff0c\u57fa\u56e0i\u7684\u957f\u5ea6\u4e3a<code>l<\/code>\uff0ccount\u8868\u8fbe\u503c\u4e3a<code>q<\/code>\uff1b\u5219\u57fa\u56e0i\u7684FPKM\u4e0eTPM\u6807\u51c6\u5316\u65b9\u5f0f\u8ba1\u7b97\u5982\u4e0b<\/p>"},{"title":"\u4eceGEO\u4e0b\u8f7d\u82af\u7247\u6216RNAseq\u6d4b\u5e8f\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/048-geo-download\/","pubDate":"Sat, 30 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/048-geo-download\/","description":"<blockquote>\n<p>\u6316\u6398GEO\u6570\u636e\u65f6\uff0c\u4e3b\u8981\u4e00\u65b9\u9762\u662f\u4e0b\u8f7dGEO\u7684\u6d4b\u5e8f\u6570\u636e\uff08\u5305\u62ec\u57fa\u56e0\u82af\u7247array\u4e0eRNAseq\u4e24\u7c7b\uff09\u7684\u8868\u8fbe\u77e9\u9635\u3002\u540c\u65f6\u4f1a\u6d89\u53ca\u5230\u4e00\u4e9b\u7ec6\u8282\u95ee\u9898\uff0c\u4f8b\u5982array\u82af\u7247ID\u8f6c\u6362\u3001\u6837\u672cmeta\u4fe1\u606f\u7b49\u3002<\/p>"},{"title":"\u4e0b\u8f7d\u6d4b\u5e8f\u6570\u636eSRR\u4e0efastq.gz\u65b9\u5f0f","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/049-sra-download\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/049-sra-download\/","description":"<h1 id=\"1\u51c6\u5907conda\u73af\u5883\u4e0e\u8f6f\u4ef6\">1\u3001\u51c6\u5907conda\u73af\u5883\u4e0e\u8f6f\u4ef6<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u51c6\u5907download\u73af\u5883<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>conda create -n download \n<\/span><\/span><span style=\"display:flex;\"><span>conda activate download\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5b89\u88c5\u8f6f\u4ef6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>conda install -c hcc aspera-cli\n<\/span><\/span><span style=\"display:flex;\"><span>conda install -c bioconda sra-tools\n<\/span><\/span><span style=\"display:flex;\"><span>conda install -c conda-forge pigz\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u4ee5SRR13911909\u4e3a\u4f8b<\/li>\n<\/ul>\n<h1 id=\"2aspera\u4e0b\u8f7d\">2\u3001aspera\u4e0b\u8f7d<\/h1>\n<ul>\n<li><a href=\"https:\/\/www.ebi.ac.uk\/ena\/browser\/view\/SRR13911909\">https:\/\/www.ebi.ac.uk\/ena\/browser\/view\/SRR13911909<\/a><\/li>\n<\/ul>\n<h2 id=\"21-\u4e0b\u8f7d\u94fe\u63a5\">2.1 \u4e0b\u8f7d\u94fe\u63a5<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/SRR139\/009\/SRR13911909\/SRR13911909_1.fastq.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/SRR139\/009\/SRR13911909\/SRR13911909_2.fastq.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u89c2\u5bdf\u4e0a\u8ff0\u94fe\u63a5\u89c4\u5f8b\u540e\uff0c\u53ef\u4ee5\u81ea\u52a8\u751f\u6210\u4e0b\u8f7d\u94fe\u63a5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0:6<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/00<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0-1<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>_1.fastq.gz\n<\/span><\/span><span style=\"display:flex;\"><span>era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0:6<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/00<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0-1<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>_2.fastq.gz \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"22-aspera\u4e0b\u8f7d\">2.2 aspera\u4e0b\u8f7d<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>id=SRR13911909\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ascp -QT -l 300m -P33001  <span style=\"color:#0ff;font-weight:bold\">\\\n<\/span><\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\"><\/span>-i ~\/miniconda3\/envs\/download\/etc\/asperaweb_id_dsa.openssh   <span style=\"color:#0ff;font-weight:bold\">\\\n<\/span><\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\"><\/span>era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0:6<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/00<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0-1<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>_1.fastq.gz  .\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ascp -QT -l 300m -P33001  <span style=\"color:#0ff;font-weight:bold\">\\\n<\/span><\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\"><\/span>-i ~\/miniconda3\/envs\/download\/etc\/asperaweb_id_dsa.openssh   <span style=\"color:#0ff;font-weight:bold\">\\\n<\/span><\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#0ff;font-weight:bold\"><\/span>era-fasp@fasp.sra.ebi.ac.uk:\/vol1\/fastq\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0:6<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/00<span style=\"color:#0ff;font-weight:bold\">${<\/span>id:0-1<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>\/<span style=\"color:#0ff;font-weight:bold\">${<\/span>id<span style=\"color:#0ff;font-weight:bold\">}<\/span>_2.fastq.gz  .\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6700\u540e\u4e00\u4e2a\u70b9\u8868\u793a\u4e0b\u8f7d\u6587\u4ef6\u7684\u50a8\u5b58\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5982\u679c\u662f\u5176\u5b83\u73af\u5883\uff0c\u5c06download\u66ff\u6362\u4e3a\u5bf9\u5e94\u73af\u5883\u540d\u5373\u53ef<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5982\u679c\u662fbase\u73af\u5883\uff1a ~\/miniconda3\/etc\/asperaweb_id_dsa.openssh<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><p>\u4f7f\u7528aspera\u53ef\u4ee5\u8fbe\u5230\u767e\u5146\u7684\u901f\u5ea6\uff0c\u5efa\u8bae\u9996\u5148\u5c1d\u8bd5\u3002\u4f46\u6700\u8fd1\u8bd5\u4e86\u51e0\u6b21\uff0c\u5bb9\u6613\u62a5\u9519\uff0c\u4e0d\u7a33\u5b9a(\u62a5\u9519\u5185\u5bb9\u5982\u4e0b)\uff1b\u6709\u65f6\u5019\u53ef\u4ee5\u3002<\/p>"},{"title":"050\u5feb\u6377\u952e","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/050-shortcuts\/","pubDate":"Tue, 26 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/050-shortcuts\/","description":"<h2 id=\"shell\">shell<\/h2>\n<p><code>Ctrl + a<\/code> : \u5c06\u5149\u6807\u79fb\u5230\u672c\u884c\u7684\u5f00\u59cb\u5904<\/p>\n<p><code>Ctrl + e<\/code> : \u5c06\u5149\u6807\u79fb\u5230\u672c\u884c\u7684\u672b\u5c3e\u5904<\/p>\n<p><code>Backsapce<\/code> : \u5220\u9664\u524d\u4e00\u4e2a\u5b57\u7b26<\/p>\n<p><code>Ctrl + d<\/code> : \u5220\u9664\u540e\u4e00\u4e2a\u5b57\u7b26<\/p>\n<p><code>Ctrl + k<\/code> : \u4ece\u5149\u6807\u5f00\u59cb\u526a\u5207\u81f3\u884c\u7684\u672b\u5c3e<\/p>\n<p><code>Ctrl + y<\/code> : \u4ece\u884c\u7684\u5f00\u5934\u526a\u5207\u5149\u6807\u5904<\/p>"},{"title":"Refgenie\u4e0b\u8f7d\u53c2\u8003\u57fa\u56e0\u7ec4","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/050-refgenie\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/050-refgenie\/","description":"<h1 id=\"refgenie\u53c2\u8003\u57fa\u56e0\u7ec4\u963f\u62c9\u4e01\u5546\u5e97\">refgenie\uff1a\u53c2\u8003\u57fa\u56e0\u7ec4\uff08\u963f\u62c9\u4e01\uff09\u5546\u5e97<\/h1>\n<blockquote>\n<p><a href=\"http:\/\/refgenie.databio.org\/\">http:\/\/refgenie.databio.org\/<\/a>\n<em>Here we provide a web interface and a RESTful API to access genome assets for popular reference genome assemblies.<\/em><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/upload-images.jianshu.io\/upload_images\/20354525-4a88fd7f5b351d03.png?imageMogr2\/auto-orient\/strip%7CimageView2\/2\/w\/1240 --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/20354525-4a88fd7f5b351d03.png\" alt=\"\"  \/>\n<\/p>"},{"title":"STRINGdb\u5305\u4e0b\u8f7d\u86cb\u767dPPI\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/051-stringdb\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/051-stringdb\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> (!require(<span style=\"color:#0ff;font-weight:bold\">&#34;BiocManager&#34;<\/span>, quietly = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>    install.packages(<span style=\"color:#0ff;font-weight:bold\">&#34;BiocManager&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>BiocManager::install(<span style=\"color:#0ff;font-weight:bold\">&#34;STRINGdb&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(STRINGdb)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1\u5b9a\u4e49\u8981\u4f7f\u7528\u7684string\u7248\u672c\u7269\u79cd\u4ee5\u53cappi\u9608\u503c\u5206\u6570\">1\u3001\u5b9a\u4e49\u8981\u4f7f\u7528\u7684STRING\u7248\u672c\u3001\u7269\u79cd\uff0c\u4ee5\u53caPPI\u9608\u503c\u5206\u6570<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>string_db &lt;- STRINGdb$new(version=<span style=\"color:#0ff;font-weight:bold\">&#34;11&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                          species=<span style=\"color:#ff0;font-weight:bold\">9606<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                          score_threshold=<span style=\"color:#ff0;font-weight:bold\">200<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                          input_directory=<span style=\"color:#0ff;font-weight:bold\">&#34;&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2\u793a\u4f8b\u57fa\u56e0\">2\u3001\u793a\u4f8b\u57fa\u56e0<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>data(diff_exp_example1)\n<\/span><\/span><span style=\"display:flex;\"><span>genes = diff_exp_example1[1:<span style=\"color:#ff0;font-weight:bold\">50<\/span>,]\n<\/span><\/span><span style=\"display:flex;\"><span>head(genes)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      pvalue    logFC         gene<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 0.0001018 3.333461       VSTM2L<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 0.0001392 3.822383       TBC1D2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 0.0001720 3.306056        LENG9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 0.0001739 3.024605       TMEM27<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5 0.0001990 3.854414 LOC100506014<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 0.0002393 3.082052       TSPAN1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\u57fa\u56e0\u540d\u5339\u914dprotein ID<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7b2c\u4e00\u4e2a\u53c2\u6570\u662fdata.frame; \u7b2c\u4e8c\u4e2a\u53c2\u6570\u662f\u57fa\u56e0\u6240\u5728\u5217\u7684\u5217\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>genes_mapped &lt;- string_db$map(genes, <span style=\"color:#0ff;font-weight:bold\">&#34;gene&#34;<\/span> )\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#Warning:  we couldn&#39;t map to STRING 30% of your identifiers<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(genes_mapped)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#            gene    pvalue    logFC            STRING_id<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1        VSTM2L 0.0001018 3.333461 9606.ENSP00000362560<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2        TBC1D2 0.0001392 3.822383 9606.ENSP00000481721<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3         LENG9 0.0001720 3.306056 9606.ENSP00000479355<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4        TMEM27 0.0001739 3.024605 9606.ENSP00000369699<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 40 LOC100506014 0.0001990 3.854414                 &lt;NA&gt;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5        TSPAN1 0.0002393 3.082052 9606.ENSP00000361072<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#string_db$plot_network(genes_mapped$STRING_id)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"3\u4e0b\u8f7d\u8fd9\u4e9b\u57fa\u56e0\u95f4\u7684\u4e92\u4f5c\u5173\u7cfb\">3\u3001\u4e0b\u8f7d\u8fd9\u4e9b\u57fa\u56e0\u95f4\u7684\u4e92\u4f5c\u5173\u7cfb<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ppi = string_db$get_interactions(genes_mapped$STRING_id) %&gt;% distinct()\n<\/span><\/span><span style=\"display:flex;\"><span>ppi = ppi %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::left_join(genes_mapped[,c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>)], by=c(<span style=\"color:#0ff;font-weight:bold\">&#39;from&#39;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#39;STRING_id&#39;<\/span>)) %&gt;% <span style=\"color:#007f7f\">#\u5217\u6807\u5e8f\u53f7\u6839\u636e\u5177\u4f53\u60c5\u51b5\u800c\u5b9a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::rename(Gene1=gene) %&gt;% <span style=\"color:#007f7f\">##\u5217\u540d\u6839\u636e\u5177\u4f53\u60c5\u51b5\u800c\u5b9a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::left_join(genes_mapped[,c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>)], by=c(<span style=\"color:#0ff;font-weight:bold\">&#39;to&#39;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#39;STRING_id&#39;<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::rename(Gene2=gene) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(Gene1, Gene2, combined_score)\n<\/span><\/span><span style=\"display:flex;\"><span>head(ppi)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      Gene1   Gene2 combined_score<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1       C3  TYROBP            240<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2   ABCA12   GRHL3            308<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 FAM189A1 TM4SF20            400<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4   ABCA12  NIPAL4            824<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5    GRHL3  NIPAL4            275<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6    GRHL3  IGDCC4            238<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"\u4f7f\u7528clusterProfiler\u4e0b\u8f7dGO&KEGG\u901a\u8def\u57fa\u56e0","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/052-clusterprofiler\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/052-clusterprofiler\/","description":"<h1 id=\"1go\">1\u3001GO<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">44\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">45\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">46\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">47\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">48\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">49\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">50\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">51\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">52\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">53\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">54\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">55\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">56\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">57\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">58\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">59\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">60\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">61\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">62\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">63\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">64\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">65\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">66\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>GO_data &lt;- clusterProfiler:::get_GO_data(<span style=\"color:#0ff;font-weight:bold\">&#34;org.Hs.eg.db&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;ALL&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;SYMBOL&#34;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span>names(GO_data)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;PATHID2NAME&#34;  &#34;EXTID2PATHID&#34; &#34;GO2ONT&#34;       &#34;PATHID2EXTID&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\uff081\uff09GO term\u7684\u7ec4\u6210\u57fa\u56e0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>class(GO_data$PATHID2EXTID)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#[1] &#34;list&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>GO_data$PATHID2EXTID[1]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $`GO:0000002`<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;PARP1&#34;    &#34;SLC25A4&#34;  &#34;DNA2&#34;     &#34;TYMP&#34;     &#34;LIG3&#34;     &#34;MEF2A&#34;   <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [7] &#34;MPV17&#34;    &#34;OPA1&#34;     &#34;TOP3A&#34;    &#34;TP53&#34;     &#34;LONP1&#34;    &#34;AKT3&#34;    <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [13] &#34;PPARGC1A&#34; &#34;POLG2&#34;    &#34;SLC25A36&#34; &#34;PIF1&#34;     &#34;SESN2&#34;    &#34;SLC25A33&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [19] &#34;MGME1&#34;    &#34;PRIMPOL&#34;  &#34;STOX1&#34;  <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\uff082\uff09\u57fa\u56e0\u6240\u6d89\u53ca\u7684\u901a\u8def<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>class(GO_data$EXTID2PATHID)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#[1] &#34;list&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>GO_data$EXTID2PATHID[1]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $A1BG<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;GO:0001775&#34; &#34;GO:0002252&#34; &#34;GO:0002263&#34; &#34;GO:0002274&#34; &#34;GO:0002275&#34; &#34;GO:0002283&#34; &#34;GO:0002366&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [8] &#34;GO:0002376&#34; &#34;GO:0002443&#34; &#34;GO:0002444&#34; &#34;GO:0002446&#34; &#34;GO:0002576&#34; &#34;GO:0003674&#34; &#34;GO:0005575&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\uff083\uff09GO term\u7684\u540d\u5b57<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>class(GO_data$PATHID2NAME)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#[1] &#34;character&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>GO_data$PATHID2NAME[1]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># GO:0000001 <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#34;mitochondrion inheritance&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\uff084\uff09GO term\u7684\u7c7b\u522b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>class(GO_data$GO2ONT)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#[1] &#34;character&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>GO_data$GO2ONT[1]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># GO:0000002 <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#34;BP&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>table(GO_data$GO2ONT)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BP    CC    MF <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 16013  1981  4755 <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>go_name = reshape2::melt(GO_data$PATHID2NAME) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\trownames_to_column(<span style=\"color:#0ff;font-weight:bold\">&#34;ID&#34;<\/span>) %&gt;%\n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::rename(<span style=\"color:#0ff;font-weight:bold\">&#34;Name&#34;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#34;value&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>go_type = reshape2::melt(GO_data$GO2ONT) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\trownames_to_column(<span style=\"color:#0ff;font-weight:bold\">&#34;ID&#34;<\/span>) %&gt;%\n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::rename(<span style=\"color:#0ff;font-weight:bold\">&#34;Type&#34;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#34;value&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>go_info = inner_join(go_name, go_type) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::mutate(GSEA=toupper(gsub(<span style=\"color:#0ff;font-weight:bold\">&#34; &#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;_&#34;<\/span>,paste0(<span style=\"color:#0ff;font-weight:bold\">&#34;GO&#34;<\/span>,Type,<span style=\"color:#0ff;font-weight:bold\">&#34; &#34;<\/span>,Name))))\n<\/span><\/span><span style=\"display:flex;\"><span>dim(go_info)\n<\/span><\/span><span style=\"display:flex;\"><span>head(go_info)\n<\/span><\/span><span style=\"display:flex;\"><span>table(rownames(brca_enrich_kegg) %in% go_info$GSEA)\n<\/span><\/span><span style=\"display:flex;\"><span>          <span style=\"color:#007f7f\"># ID                                               Name Type<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 GO:0000002                   mitochondrial genome maintenance   BP<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 GO:0000003                                       reproduction   BP<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 GO:0000009             alpha-1,6-mannosyltransferase activity   MF<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 GO:0000010          trans-hexaprenyltranstransferase activity   MF<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5 GO:0000012                         single strand break repair   BP<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 GO:0000014 single-stranded DNA endodeoxyribonuclease activity   MF<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                                                     <span style=\"color:#007f7f\"># GSEA<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1                   GOBP_MITOCHONDRIAL_GENOME_MAINTENANCE<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2                                       GOBP_REPRODUCTION<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3             GOMF_ALPHA-1,6-MANNOSYLTRANSFERASE_ACTIVITY<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4          GOMF_TRANS-HEXAPRENYLTRANSTRANSFERASE_ACTIVITY<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5                         GOBP_SINGLE_STRAND_BREAK_REPAIR<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 GOMF_SINGLE-STRANDED_DNA_ENDODEOXYRIBONUCLEASE_ACTIVITY<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u6b64\u5916 <code>GO.db<\/code>\u5305\u4e5f\u63d0\u4f9b\u4e86\u9664\u7ec4\u6210\u57fa\u56e0\u4ee5\u5916\u7684GO\u6ce8\u91ca\u4fe1\u606f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(GO.db)\n<\/span><\/span><span style=\"display:flex;\"><span>keytypes(GO.db)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;DEFINITION&#34; &#34;GOID&#34;       &#34;ONTOLOGY&#34;   &#34;TERM&#34; <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>goids = keys(GO.db, keytype = <span style=\"color:#0ff;font-weight:bold\">&#34;GOID&#34;<\/span>)[1:<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;GO:0000001&#34; &#34;GO:0000002&#34; &#34;GO:0000003&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>goids_anno = AnnotationDbi::select(GO.db,\n<\/span><\/span><span style=\"display:flex;\"><span>       keys = goids,\n<\/span><\/span><span style=\"display:flex;\"><span>       columns = c(<span style=\"color:#0ff;font-weight:bold\">&#34;TERM&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;ONTOLOGY&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;DEFINITION&#34;<\/span>), <span style=\"color:#007f7f\">#\u5176\u4e2dDEFINITION\u4e3aterm\u7684\u8be6\u7ec6\u63cf\u8ff0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>       keytype=<span style=\"color:#0ff;font-weight:bold\">&#34;GOID&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6240\u6709\u7684BP term\u7684GO id<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>goBP = select(GO.db,\n<\/span><\/span><span style=\"display:flex;\"><span>              keys = <span style=\"color:#0ff;font-weight:bold\">&#34;BP&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              columns = c(<span style=\"color:#0ff;font-weight:bold\">&#34;GOID&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>              keytype=<span style=\"color:#0ff;font-weight:bold\">&#34;ONTOLOGY&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2kegg\">2\u3001KEGG<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>hsa_kegg &lt;- clusterProfiler::download_KEGG(<span style=\"color:#0ff;font-weight:bold\">&#34;hsa&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>names(hsa_kegg)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;KEGGPATHID2EXTID&#34; &#34;KEGGPATHID2NAME&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### KEGG id\u4e0ename<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(z)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       from                                       to<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 hsa00010             Glycolysis \/ Gluconeogenesis<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 hsa00020                Citrate cycle (TCA cycle)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 hsa00030                Pentose phosphate pathway<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### KEGG id\u7684\u7ec4\u6210\u57fa\u56e0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(hsa_kegg$KEGGPATHID2EXTID)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       from    to<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 hsa00010 10327<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 hsa00010   124<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 hsa00010   125<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"\u4eba\u7c7b\u57fa\u56e0\u7ec4\u57fa\u7840\u77e5\u8bc6\u4e0e\u4e0b\u8f7d\u67e5\u8be2","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/053-human-genome\/","pubDate":"Sat, 28 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/053-human-genome\/","description":"<p><img loading=\"lazy\" src=\"https:\/\/www.edinformatics.com\/math_science\/human_chromosomes2.jpg\" alt=\"How many genes are in the human genome?\"  \/>\n<\/p>\n<h1 id=\"\u4e00\u57fa\u56e0\u7ec4\u5927\u5c0f\">\u4e00\u3001\u57fa\u56e0\u7ec4\u5927\u5c0f<\/h1>\n<p>\uff081\uff09\u4eba\u7c7b\u57fa\u56e0\u7ec4\u4e3b\u8981\u7531\u7ec6\u80de\u6838\u768423\u5bf9\u67d3\u8272\u4f53\u7ec4\u6210(\u6838\u57fa\u56e0\u7ec4)\uff0c\u8fd8\u5305\u62ec\u7ebf\u7c92\u4f53\u4e2d\u7684\u5c0fDNA\u5206\u5b50(\u7ebf\u7c92\u4f53\u57fa\u56e0\u7ec4)\u3002<\/p>\n<p>\uff082\uff09\u5355\u500d\u4f53\u57fa\u56e0\u7ec4\u5927\u6982\u670930\u4ebf\u4e2a\u78b1\u57fa\u5bf9\u7ec4\u6210\uff0c\u5177\u4f53\u5230\u6bcf\u4e2a\u67d3\u8272\u4f53\u7684\u78b1\u57fa\u5bf9\u957f\u5ea6\u4e0e\u57fa\u56e0\u6570\u91cf\u5982\u4e0b\u6240\u793a(\u53c2\u7167UCSC\u7684hg38)\u3002<\/p>"},{"title":"\u57fa\u56e0-\u86cb\u767d-\u5316\u5408\u7269ID\u8f6c\u6362","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/054-id-conversion\/","pubDate":"Sat, 28 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/054-id-conversion\/","description":"<h1 id=\"1\u4e0d\u540c\u57fa\u56e0id\u8f6c\u6362\">1\u3001\u4e0d\u540c\u57fa\u56e0ID\u8f6c\u6362<\/h1>\n<h2 id=\"11-orghsegdb\u5305\">1.1 org.Hs.eg.db\u5305<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(dplyr)\n<\/span><\/span><span style=\"display:flex;\"><span>library(org.Hs.eg.db)\n<\/span><\/span><span style=\"display:flex;\"><span>keytypes(org.Hs.eg.db) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  [1] &#34;ACCNUM&#34;       &#34;ALIAS&#34;        &#34;ENSEMBL&#34;      &#34;ENSEMBLPROT&#34;  &#34;ENSEMBLTRANS&#34; &#34;ENTREZID&#34;    <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  [7] &#34;ENZYME&#34;       &#34;EVIDENCE&#34;     &#34;EVIDENCEALL&#34;  &#34;GENENAME&#34;     &#34;GENETYPE&#34;     &#34;GO&#34;          <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [13] &#34;GOALL&#34;        &#34;IPI&#34;          &#34;MAP&#34;          &#34;OMIM&#34;         &#34;ONTOLOGY&#34;     &#34;ONTOLOGYALL&#34; <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [19] &#34;PATH&#34;         &#34;PFAM&#34;         &#34;PMID&#34;         &#34;PROSITE&#34;      &#34;REFSEQ&#34;       &#34;SYMBOL&#34;      <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [25] &#34;UCSCKG&#34;       &#34;UNIPROT&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_symbol=c(<span style=\"color:#0ff;font-weight:bold\">&#34;RHO&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;CALM1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;MEG3&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;GNGT1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;SAG&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;RPGRIP1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;TRPM1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PCP2&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PCP4&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;AP1B1&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids&lt;-AnnotationDbi::select(org.Hs.eg.db, keys=as.character(gene_symbol), \n<\/span><\/span><span style=\"display:flex;\"><span>                                columns=c(<span style=\"color:#0ff;font-weight:bold\">&#34;ENSEMBL&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;ENTREZID&#34;<\/span>), <span style=\"color:#007f7f\">#\u76ee\u6807\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                                keytype=<span style=\"color:#0ff;font-weight:bold\">&#34;SYMBOL&#34;<\/span>) <span style=\"color:#007f7f\">#\u76ee\u524d\u7684\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u53bb\u91cd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::distinct(ENTREZID, .keep_all = <span style=\"color:#fff;font-weight:bold\">T<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     SYMBOL         ENSEMBL ENTREZID<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1      RHO ENSG00000163914     6010<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2    CALM1 ENSG00000198668      801<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3     MEG3 ENSG00000214548    55384<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4    GNGT1 ENSG00000127928     2792<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5      SAG ENSG00000130561     6295<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6  RPGRIP1 ENSG00000092200    57096<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 7    TRPM1 ENSG00000134160     4308<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 8     PCP2 ENSG00000174788   126006<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 9     PCP4 ENSG00000183036     5121<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 10   AP1B1 ENSG00000100280      162<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"12-biomart\u5305\">1.2 biomaRt\u5305<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(<span style=\"color:#0ff;font-weight:bold\">&#34;biomaRt&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>ensembl = useMart(<span style=\"color:#0ff;font-weight:bold\">&#34;ensembl&#34;<\/span>,dataset=<span style=\"color:#0ff;font-weight:bold\">&#34;hsapiens_gene_ensembl&#34;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span>attributes = listAttributes(ensembl)\n<\/span><\/span><span style=\"display:flex;\"><span>attributes[1:<span style=\"color:#ff0;font-weight:bold\">5<\/span>,]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># library(httr)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># httr::set_config(config(ssl_verifypeer = 0L))<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_symbol=c(<span style=\"color:#0ff;font-weight:bold\">&#34;RHO&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;CALM1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;MEG3&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;GNGT1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;SAG&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;RPGRIP1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;TRPM1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PCP2&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PCP4&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;AP1B1&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids2 &lt;- getBM(filters= <span style=\"color:#0ff;font-weight:bold\">&#34;hgnc_symbol&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                    attributes= c(<span style=\"color:#0ff;font-weight:bold\">&#34;hgnc_symbol&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;ensembl_gene_id&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;entrezgene_id&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                    values = gene_symbol, mart= ensembl)\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2\u9f20\u6e90\u57fa\u56e0\u8f6c\u4e3a\u4eba\u7c7b\u57fa\u56e0id\">2\u3001\u9f20\u6e90\u57fa\u56e0\u8f6c\u4e3a\u4eba\u7c7b\u57fa\u56e0ID<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>musGenes &lt;- c(<span style=\"color:#0ff;font-weight:bold\">&#34;Hmmr&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Tlx3&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Cpeb4&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u65b9\u5f0f1\uff1a\u76f4\u63a5\u5927\u5c0f\u5199\u8f6c\u6362<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>toupper(musGenes)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;HMMR&#34;  &#34;TLX3&#34;  &#34;CPEB4&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u65b9\u5f0f2\uff1a\u901a\u8fc7biomaRt\u5305\uff08\u4e0d\u7a33\u5b9a\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>require(<span style=\"color:#0ff;font-weight:bold\">&#34;biomaRt&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># library(httr)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># httr::set_config(config(ssl_verifypeer = 0L))<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>human = useMart(<span style=\"color:#0ff;font-weight:bold\">&#34;ensembl&#34;<\/span>, dataset = <span style=\"color:#0ff;font-weight:bold\">&#34;hsapiens_gene_ensembl&#34;<\/span>,host = <span style=\"color:#0ff;font-weight:bold\">&#34;dec2021.archive.ensembl.org&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>mouse = useMart(<span style=\"color:#0ff;font-weight:bold\">&#34;ensembl&#34;<\/span>, dataset = <span style=\"color:#0ff;font-weight:bold\">&#34;mmusculus_gene_ensembl&#34;<\/span>,host = <span style=\"color:#0ff;font-weight:bold\">&#34;dec2021.archive.ensembl.org&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>genes = getLDS(attributes = c(<span style=\"color:#0ff;font-weight:bold\">&#34;mgi_symbol&#34;<\/span>), filters = <span style=\"color:#0ff;font-weight:bold\">&#34;mgi_symbol&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>               values = musGenes, \n<\/span><\/span><span style=\"display:flex;\"><span>               mart = mouse, \n<\/span><\/span><span style=\"display:flex;\"><span>               attributesL = c(<span style=\"color:#0ff;font-weight:bold\">&#34;hgnc_symbol&#34;<\/span>), \n<\/span><\/span><span style=\"display:flex;\"><span>               martL = human, uniqueRows=<span style=\"color:#fff;font-weight:bold\">T<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u65b9\u5f0f3\uff1aMGI \u6570\u636e\u5e93<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># https:\/\/support.bioconductor.org\/p\/129636\/<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(dplyr)\n<\/span><\/span><span style=\"display:flex;\"><span>mouse_human_genes = read.csv(<span style=\"color:#0ff;font-weight:bold\">&#34;http:\/\/www.informatics.jax.org\/downloads\/reports\/HOM_MouseHumanSequence.rpt&#34;<\/span>,sep=<span style=\"color:#0ff;font-weight:bold\">&#34;\\t&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>convert_mouse_to_human &lt;- <span style=\"color:#fff;font-weight:bold\">function<\/span>(gene_list){\n<\/span><\/span><span style=\"display:flex;\"><span>  \n<\/span><\/span><span style=\"display:flex;\"><span>  output = c()\n<\/span><\/span><span style=\"display:flex;\"><span>  \n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"color:#fff;font-weight:bold\">for<\/span>(gene <span style=\"color:#fff;font-weight:bold\">in<\/span> gene_list){\n<\/span><\/span><span style=\"display:flex;\"><span>    class_key = (mouse_human_genes %&gt;% filter(Symbol == gene &amp; Common.Organism.Name==<span style=\"color:#0ff;font-weight:bold\">&#34;mouse, laboratory&#34;<\/span>))[[<span style=\"color:#0ff;font-weight:bold\">&#39;DB.Class.Key&#39;<\/span>]]\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span>(!identical(class_key, integer(<span style=\"color:#ff0;font-weight:bold\">0<\/span>)) ){\n<\/span><\/span><span style=\"display:flex;\"><span>      human_genes = (mouse_human_genes %&gt;% filter(DB.Class.Key == class_key &amp; Common.Organism.Name==<span style=\"color:#0ff;font-weight:bold\">&#34;human&#34;<\/span>))[,<span style=\"color:#0ff;font-weight:bold\">&#34;Symbol&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>      <span style=\"color:#fff;font-weight:bold\">for<\/span>(human_gene <span style=\"color:#fff;font-weight:bold\">in<\/span> human_genes){\n<\/span><\/span><span style=\"display:flex;\"><span>        output = append(output,human_gene)\n<\/span><\/span><span style=\"display:flex;\"><span>      }\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>  }\n<\/span><\/span><span style=\"display:flex;\"><span>  \n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"color:#fff;font-weight:bold\">return<\/span> (output)\n<\/span><\/span><span style=\"display:flex;\"><span>}\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>convert_mouse_to_human(musGenes)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1] &#34;HMMR&#34;  &#34;TLX3&#34;  &#34;CPEB4&#34;<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># # https:\/\/github.com\/lishensuo\/utils<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># library(&#34;biomaRt&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># # library(httr)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># # httr::set_config(config(ssl_verifypeer = 0L))<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># human = useMart(&#34;ensembl&#34;, dataset = &#34;hsapiens_gene_ensembl&#34;,host = &#34;dec2021.archive.ensembl.org&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># mouse = useMart(&#34;ensembl&#34;, dataset = &#34;mmusculus_gene_ensembl&#34;,host = &#34;dec2021.archive.ensembl.org&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># # https:\/\/www.gencodegenes.org\/mouse\/<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dat = data.table::fread(&#34;gencode.vM33.basic.annotation.gtf.gz&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dat = subset(dat, V3 == &#34;gene&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dat_sub = dat[,&#34;V9&#34;] %&gt;% <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   separate(V9, into = c(&#34;gene_id&#34;,&#34;gene_type&#34;,&#34;gene_name&#34;,&#34;mgi_id&#34;,&#34;havana_gene&#34;), sep = &#34;; &#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dat_sub$gene_name2 = gsub(&#39;gencode.vM33.basic.annotation.gtf.gz &#34;&#39;,&#39;&#39;,dat_sub$gene_name)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dat_sub$gene_name2 = gsub(&#39;&#34;&#39;,&#39;&#39;,dat_sub$gene_name2)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># genes = getLDS(attributes = c(&#34;mgi_symbol&#34;), filters = &#34;mgi_symbol&#34;, <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                values = dat_sub$gene_name2, <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                mart = mouse, <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                attributesL = c(&#34;hgnc_symbol&#34;), <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                martL = human, uniqueRows=T)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># write.csv(genes, file = &#34;mgi2hgnc_biomart.csv&#34;, row.names = F, quote = F)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># head(genes)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3\u86cb\u767d\u8d28\u4e0e\u57fa\u56e0id\u8f6c\u6362\">3\u3001\u86cb\u767d\u8d28\u4e0e\u57fa\u56e0ID\u8f6c\u6362<\/h1>\n<ul>\n<li><a href=\"https:\/\/www.uniprot.org\/uploadlists\/\">https:\/\/www.uniprot.org\/uploadlists\/<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220528214617188.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220528214617188.png\" alt=\"image-20220528214617188\"  \/>\n<\/p>"},{"title":"GSEA\u5bcc\u96c6\u5206\u6790\u5de5\u5177","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/055-gsea\/","pubDate":"Fri, 13 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/055-gsea\/","description":"<p>\u4ee5\u524d\u901a\u8def\u5bcc\u96c6\u5206\u6790\u76f4\u63a5\u4f7f\u7528clusterprofiler\u5305\uff0c\u9605\u8bfb\u6587\u732e\u53d1\u73b0GSEA\u5206\u6790\u53ca\u53ef\u89c6\u5316\u8f83\u591a\u4f7f\u7528Broad\u56e2\u961f\u7814\u53d1\u7684\u5de5\u5177\uff0c\u73b0\u7b80\u8981\u5b66\u4e60\u5176(window\u7248\u672c)\u4f7f\u7528\u65b9\u6cd5\u3002<\/p>"},{"title":"clusterProfiler\u5305\u5bcc\u96c6\u5206\u6790\u4e0e\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/056-clusterprofiler-viz\/","pubDate":"Sat, 14 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/056-clusterprofiler-viz\/","description":"<h2 id=\"1\u80cc\u666f\u77e5\u8bc6\">1\u3001\u80cc\u666f\u77e5\u8bc6<\/h2>\n<h3 id=\"1\u4e24\u79cd\u5bcc\u96c6\u5206\u6790\">\uff081\uff09\u4e24\u79cd\u5bcc\u96c6\u5206\u6790<\/h3>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-2db430f93bc01a2d.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/20354525-2db430f93bc01a2d.png\" alt=\"img\" style=\"zoom: 33%;\" \/>\n<ul>\n<li>\u57fa\u4e8e\u8d85\u51e0\u4f55\u68c0\u9a8c\u7684ORA(over representation analysis)\u5bcc\u96c6\u5206\u6790<\/li>\n<\/ul>\n<p>\u2460 \u5047\u8bbe\u5bf9\u8f6c\u5f55\u7ec4\u5206\u7ec4\u6d4b\u5e8f\u7684<strong>10000<\/strong>\u4e2a\u57fa\u56e0\u8868\u8fbe\u6570\u636e\u8fdb\u884c\u5dee\u5f02\u5206\u6790\uff1b<\/p>"},{"title":"\u5bcc\u96c6\u901a\u8def\u53ef\u89c6\u5316\u65b9\u5f0f","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/057-pathway-visualization\/","pubDate":"Sat, 14 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/057-pathway-visualization\/","description":"<h2 id=\"0\u793a\u4f8b\u6570\u636e\">0\u3001\u793a\u4f8b\u6570\u636e<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(clusterProfiler)\n<\/span><\/span><span style=\"display:flex;\"><span>library(org.Hs.eg.db)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>data(geneList, package=<span style=\"color:#0ff;font-weight:bold\">&#34;DOSE&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>str(geneList)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Named num [1:12495] 4.57 4.51 4.42 4.14 3.88 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># - attr(*, &#34;names&#34;)= chr [1:12495] &#34;4312&#34; &#34;8318&#34; &#34;10874&#34; &#34;55143&#34; ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_ids&lt;-AnnotationDbi::select(org.Hs.eg.db, keys=as.character(names(gene_list)), \n<\/span><\/span><span style=\"display:flex;\"><span>                                columns=<span style=\"color:#0ff;font-weight:bold\">&#34;SYMBOL&#34;<\/span>, <span style=\"color:#007f7f\">#\u76ee\u6807\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                                keytype=<span style=\"color:#0ff;font-weight:bold\">&#34;ENTREZID&#34;<\/span>) <span style=\"color:#007f7f\">#\u76ee\u524d\u7684\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># &#39;select()&#39; returned 1:1 mapping between keys and columns<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## ORA\u5206\u6790<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_deg = names(geneList)[abs(geneList) &gt; <span style=\"color:#ff0;font-weight:bold\">2<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>ego &lt;- enrichGO(gene          = gene_deg,\n<\/span><\/span><span style=\"display:flex;\"><span>                OrgDb         = org.Hs.eg.db,\n<\/span><\/span><span style=\"display:flex;\"><span>                ont           = <span style=\"color:#0ff;font-weight:bold\">&#34;CC&#34;<\/span>, <span style=\"color:#007f7f\"># &#34;BP&#34;,&#34;MF&#34;,&#34;ALL&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                pAdjustMethod = <span style=\"color:#0ff;font-weight:bold\">&#34;BH&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                pvalueCutoff  = <span style=\"color:#ff0;font-weight:bold\">0.01<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                qvalueCutoff  = <span style=\"color:#ff0;font-weight:bold\">0.05<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                readable      = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## GSEA\u5206\u6790<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gseago &lt;- gseGO(geneList     = geneList,\n<\/span><\/span><span style=\"display:flex;\"><span>                OrgDb        = org.Hs.eg.db,\n<\/span><\/span><span style=\"display:flex;\"><span>                ont          = <span style=\"color:#0ff;font-weight:bold\">&#34;CC&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                minGSSize    = <span style=\"color:#ff0;font-weight:bold\">100<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                maxGSSize    = <span style=\"color:#ff0;font-weight:bold\">500<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                pvalueCutoff = <span style=\"color:#ff0;font-weight:bold\">0.05<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                verbose      = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>gseago = setReadable(gseago, OrgDb = org.Hs.eg.db)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1ggplot2\">1\u3001ggplot2<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## ORA<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>ego_df = ego@result %&gt;% head(<span style=\"color:#ff0;font-weight:bold\">10<\/span>) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(logp = -log10(p.adjust)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::arrange(logp) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(Label=str_wrap(gsub(<span style=\"color:#0ff;font-weight:bold\">&#34;_&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34; &#34;<\/span>,Description), width = <span style=\"color:#ff0;font-weight:bold\">50<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(Label = factor(Label, levels=Label)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  tibble::remove_rownames() %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(Label, logp)\n<\/span><\/span><span style=\"display:flex;\"><span>head(ego_df)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                                      Label     logp<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1           microtubule associated complex 5.419514<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2                          spindle midzone 5.681085<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3                      spindle microtubule 7.341138<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ggplot(ego_df, aes(x=Label, y=logp)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat=<span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>, fill=<span style=\"color:#0ff;font-weight:bold\">&#34;#1b9e77&#34;<\/span>) + \n<\/span><\/span><span style=\"display:flex;\"><span>  xlab(<span style=\"color:#0ff;font-weight:bold\">&#34;Pathway names&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  ylab(<span style=\"color:#0ff;font-weight:bold\">&#34;-log10(P.adj)&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  scale_y_continuous(expand=c(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  coord_flip() + \n<\/span><\/span><span style=\"display:flex;\"><span>  xlab(<span style=\"color:#0ff;font-weight:bold\">&#34;GO Pathway&#34;<\/span>) + \n<\/span><\/span><span style=\"display:flex;\"><span>  ylab(<span style=\"color:#0ff;font-weight:bold\">&#34;Adjusted P value(-log10)&#34;<\/span>) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_text(aes(label = Label, y=<span style=\"color:#ff0;font-weight:bold\">0.2<\/span>), hjust = <span style=\"color:#ff0;font-weight:bold\">0<\/span>, size=<span style=\"color:#ff0;font-weight:bold\">5<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  theme_classic() +\n<\/span><\/span><span style=\"display:flex;\"><span>  theme(axis.text.y = element_blank(),\n<\/span><\/span><span style=\"display:flex;\"><span>        axis.ticks.y = element_blank(),\n<\/span><\/span><span style=\"display:flex;\"><span>        axis.title.y = element_text(size = <span style=\"color:#ff0;font-weight:bold\">25<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>        axis.title.x = element_text(size = <span style=\"color:#ff0;font-weight:bold\">20<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>        axis.text.x = element_text(size = <span style=\"color:#ff0;font-weight:bold\">16<\/span>))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230114200216781.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230114200216781.png\" alt=\"image-20230114200216781\" style=\"zoom: 33%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## GSEA<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>gseago_df = gseago@result %&gt;% head(<span style=\"color:#ff0;font-weight:bold\">20<\/span>) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(logp = -log10(p.adjust)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::arrange(logp) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(Label=str_wrap(gsub(<span style=\"color:#0ff;font-weight:bold\">&#34;_&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34; &#34;<\/span>,Description), width = <span style=\"color:#ff0;font-weight:bold\">50<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(Label = factor(Label, levels=Label)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  tibble::remove_rownames() %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(Label, logp, NES)\n<\/span><\/span><span style=\"display:flex;\"><span>head(gseago_df)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                            Label     logp      NES<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1   polymeric cytoskeletal fiber 3.755730 1.487284<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2   chromosome, telomeric region 4.311816 1.907511<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 microtubule associated complex 4.432327 1.944046<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ggplot(gseago_df, \n<\/span><\/span><span style=\"display:flex;\"><span>       aes(NES, fct_reorder(Label, NES), fill=qvalue)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat=<span style=\"color:#0ff;font-weight:bold\">&#39;identity&#39;<\/span>) + \n<\/span><\/span><span style=\"display:flex;\"><span>  scale_fill_continuous(low=<span style=\"color:#0ff;font-weight:bold\">&#39;red&#39;<\/span>, high=<span style=\"color:#0ff;font-weight:bold\">&#39;blue&#39;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                        guide=guide_colorbar(reverse=<span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  theme_minimal() + ylab(<span style=\"color:#fff;font-weight:bold\">NULL<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230114200540657.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230114200540657.png\" alt=\"image-20230114200540657\" style=\"zoom:50%;\" \/>\n<h2 id=\"2goplot\">2\u3001GOplot<\/h2>\n<ul>\n<li>\u5b98\u65b9\u6559\u7a0b\uff1ahttps:\/\/wencke.github.io\/<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#39;GOplot&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(GOplot)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) \u51c6\u5907\u6570\u636e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u5bcc\u96c6\u901a\u8def\u7ed3\u679c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_enrich = ego@result %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(ID, Description, geneID,p.adjust) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(Category = <span style=\"color:#0ff;font-weight:bold\">&#34;GO&#34;<\/span>, .before=<span style=\"color:#ff0;font-weight:bold\">1<\/span>) %&gt;%  \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(geneID = gsub(<span style=\"color:#0ff;font-weight:bold\">&#34;\/&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;, &#34;<\/span>, geneID)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::rename(<span style=\"color:#0ff;font-weight:bold\">&#34;Term&#34;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#34;Description&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Genes&#34;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#34;geneID&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;adj_pval&#34;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#34;p.adjust&#34;<\/span>) %&gt;%\n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(Category,ID,Term,Genes,adj_pval) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  tibble::remove_rownames()\n<\/span><\/span><span style=\"display:flex;\"><span>t(res_enrich[1,])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#           1                                                                                                                                                                                   <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Category &#34;GO&#34;                                                                                                                                                                                <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ID       &#34;GO:0005819&#34;                                                                                                                                                                        <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Term     &#34;spindle&#34;                                                                                                                                                                           <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Genes    &#34;CDCA8, CDC20, KIF23, CENPE, ASPM, DLGAP5, SKA1, NUSAP1, TPX2, TACC3, NEK2, CDK1, MAD2L1, KIF18A, BIRC5, KIF11, TRAT1, TTK, AURKB, PRC1, KIFC1, KIF18B, KIF20A, AURKA, CCNB1, KIF4A&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># adj_pval &#34;6.339976e-11&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u5982\u4e0a\uff0cID\u4e3aoptional\uff0cCategory\u4e3arequired<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) \u57fa\u56e0\u5dee\u5f02\u500d\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_logfc = data.frame(ID=gene_ids$SYMBOL,\n<\/span><\/span><span style=\"display:flex;\"><span>                       logFC=geneList)\n<\/span><\/span><span style=\"display:flex;\"><span>head(res_logfc)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      ID    logFC<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  MMP1 4.572613<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 CDC45 4.514594<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3   NMU 4.418218<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u5982\u65e0\u76f8\u5173\u6570\u636e\uff0c\u53ef\u968f\u4fbf\u8bbe\u7f6e\u4e3a0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (3) \u6784\u5efa\u7ed8\u56fe\u5bf9\u8c61<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>circ &lt;- circle_dat(res_enrich, res_logfc)\n<\/span><\/span><span style=\"display:flex;\"><span>head(circ)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\n<p>Circular visualization<\/p>"},{"title":"WGCNA\u57fa\u56e0\u52a0\u6743\u5171\u8868\u8fbe\u7f51\u7edc\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/071-wgcna\/","pubDate":"Mon, 25 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/071-wgcna\/","description":"<h2 id=\"1\u5173\u4e8ewgcna\u539f\u7406\">1\u3001\u5173\u4e8eWGCNA\u539f\u7406<\/h2>\n<h3 id=\"11-\u5efa\u7acb\u5171\u8868\u8fbe\u7f51\u7edc\">1.1 \u5efa\u7acb\u5171\u8868\u8fbe\u7f51\u7edc<\/h3>\n<p>\u5728\u57fa\u56e0\u5171\u8868\u8fbe\u7f51\u7edc\u4e2d\uff0c\u8282\u70b9node\u4ee3\u8868\u57fa\u56e0\uff0c\u8fb9edge\u4ee3\u8868\u4e24\u4e2a\u57fa\u56e0\u95f4\u5171\u8868\u8fbe\u5173\u7cfb\u3002<\/p>\n<ul>\n<li>\u82e5\u4e00\u4e2a\u57fa\u56e0\u540c\u65f6\u4e0e\u591a\u4e2a\u57fa\u56e0\u5b58\u5728\u76f8\u5173\u6027\uff0c\u79f0\u4e3ahub\u57fa\u56e0\u3002<\/li>\n<li>\u82e5\u4e00\u7fa4\u57fa\u56e0\u5b58\u5728\u9ad8\u5ea6\u4e92\u76f8\u76f8\u5173\uff0c\u79f0\u4e3amodule\u3002<\/li>\n<\/ul>\n<p>\u57fa\u56e0\u5171\u8868\u8fbe\u7f51\u7edc\u7684\u5c55\u793a\u5f62\u5f0f\u4e00\u822c\u4e3a <code>n \u00d7 n<\/code> \u90bb\u63a5\u77e9\u9635adjacency matrix(n\u4e2a\u57fa\u56e0)<\/p>"},{"title":"GSVA\u5305\u5355\u6837\u672c\u5bcc\u96c6\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/058-gsva\/","pubDate":"Sun, 15 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/058-gsva\/","description":"<h2 id=\"1gsva\u51fd\u6570\">1\u3001GSVA\u51fd\u6570<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiocManager::install(&#34;GSVA&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(GSVA)\n<\/span><\/span><span style=\"display:flex;\"><span>?gsva\n<\/span><\/span><span style=\"display:flex;\"><span>gsva(expr = ,   <span style=\"color:#007f7f\">#metrix\u683c\u5f0f\u8868\u8fbe\u77e9\u9635(\u884c--\u57fa\u56e0\uff0c\u5217--\u6837\u672c)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     gset.idx.list = , <span style=\"color:#007f7f\">#list\u683c\u5f0f\u57fa\u56e0\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     method=c(<span style=\"color:#0ff;font-weight:bold\">&#34;gsva&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;ssgsea&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;zscore&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;plage&#34;<\/span>),  <span style=\"color:#007f7f\"># defaul:gsva<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     kcdf=c(<span style=\"color:#0ff;font-weight:bold\">&#34;Gaussian&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Poisson&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;none&#34;<\/span>))  <span style=\"color:#007f7f\"># default:Gaussian<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><p>\u5982\u4e0a\u6240\u793a\uff0c<code>gsva()<\/code>\u51fd\u6570\u67094\u4e2a\u5173\u952e\u53c2\u6570\u3002<\/p>\n<ul>\n<li>\u524d\u4e24\u4e2a\u53c2\u6570\u5206\u522b\u63d0\u4f9b\u8868\u8fbe\u77e9\u9635\u4e0e\u57fa\u56e0\u96c6\uff0c\u5176\u4e2d\u57fa\u56e0\u540d\u9700\u8981\u4e3a\u76f8\u540c\u7684\u683c\u5f0f\u3002<\/li>\n<li><code>method<\/code>\u53c2\u6570\u8bbe\u7f6e\u65b9\u6cd5\uff0c\u9ed8\u8ba4\u4e3a<code>gsva<\/code><\/li>\n<li><code>kcdf<\/code>\u53c2\u6570\u8bbe\u7f6e\u5206\u5e03\u6a21\u62df\u7c7b\u578b\uff0c\u9ed8\u8ba4\u4e3a<code>Gaussian<\/code>\uff0c\u9002\u5408\u4e8earray\u6570\u636e\u4ee5\u53calog\u6807\u51c6\u5316(CPM\/RPKM\/TPM\u7b49)\u7684RNA-seq\u6570\u636e\u3002<code>Poisson<\/code>\u5206\u5e03\u9002\u5408RNA-seq\u7684\u539f\u59cbcount\u77e9\u9635\u3002<\/li>\n<\/ul>\n<h2 id=\"2\u793a\u4f8b\u6570\u636e\">2\u3001\u793a\u4f8b\u6570\u636e<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) \u8868\u8fbe\u77e9\u9635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiocManager::install(&#34;GSVAdata&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(GSVAdata)\n<\/span><\/span><span style=\"display:flex;\"><span>data(commonPickrellHuang)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### array\u77e9\u9635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>array_mt = exprs(huangArrayRMAnoBatchCommon_eset)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(array_mt)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 11508    36<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>array_mt[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        NA19099  NA18523  NA19144  NA19137<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 8567  8.370526 8.544890 8.270395 8.585984<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 23139 7.536228 7.232781 7.469420 7.801986<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 7580  6.325102 6.405961 6.510249 6.285510<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 55619 9.134495 9.049938 9.704679 9.285202<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### count\u77e9\u9635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>count_mt = exprs(pickrellCountsArgonneCQNcommon_eset)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(count_mt)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 11508    36<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>count_mt[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       NA19099 NA18523 NA19144 NA19137<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 8567      326     209     318     343<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 23139     255     169     245     361<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 7580       72      69     124      76<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 55619     487     590     678     540<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) \u57fa\u56e0\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(msigdbr)\n<\/span><\/span><span style=\"display:flex;\"><span>hm_H = msigdbr(species = <span style=\"color:#0ff;font-weight:bold\">&#34;Homo sapiens&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>               category = <span style=\"color:#0ff;font-weight:bold\">&#34;H&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>               subcategory = <span style=\"color:#fff;font-weight:bold\">NULL<\/span>) %&gt;% as.data.frame() %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(gs_cat, gs_subcat, gs_name, entrez_gene)\n<\/span><\/span><span style=\"display:flex;\"><span>hm_H.list = split(hm_H$entrez_gene, hm_H$gs_name)\n<\/span><\/span><span style=\"display:flex;\"><span>str(head(hm_H.list))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># List of 6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_ADIPOGENESIS       : int [1:210] 19 11194 10449 33 34 35 47 50 51 112 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_ALLOGRAFT_REJECTION: int [1:335] 16 6059 10006 43 92 207 322 567 567 586 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_ANDROGEN_RESPONSE  : int [1:102] 10257 11057 2181 87 9510 11047 9590 207 220 56172 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_ANGIOGENESIS       : int [1:36] 350 351 894 1281 1290 6372 2260 11167 3685 182 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_APICAL_JUNCTION    : int [1:231] 58 60 70 71 72 87 88 89 81 81 ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $ HALLMARK_APICAL_SURFACE     : int [1:46] 102 79602 79602 84632 9465 351 50617 5205 2683 672 ...<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"3gsva\u5206\u6790\">3\u3001GSVA\u5206\u6790<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) array + gsva<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_gsva = gsva(array_mt, hm_H.list)\n<\/span><\/span><span style=\"display:flex;\"><span>class(res_gsva)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;matrix&#34; &#34;array&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>dim(res_gsva)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 50 36<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_gsva[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                                  NA19099     NA18523      NA19144    NA19137<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ADIPOGENESIS        -0.21147644  0.08157479  0.004672524 -0.1656925<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ALLOGRAFT_REJECTION -0.32620137 -0.44105423 -0.452996166 -0.4288909<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ANDROGEN_RESPONSE    0.02056377  0.09123573 -0.135386552 -0.2198959<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ANGIOGENESIS        -0.02435541 -0.18282244  0.281235763  0.5114103<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) count + ssgsea<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_gsva = gsva(count_mt, hm_H.list, \n<\/span><\/span><span style=\"display:flex;\"><span>                method = <span style=\"color:#0ff;font-weight:bold\">&#34;ssgsea&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                kcdf = <span style=\"color:#0ff;font-weight:bold\">&#34;Poisson&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>class(res_gsva)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;matrix&#34; &#34;array&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>dim(res_gsva)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 50 36<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res_gsva[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                                NA19099    NA18523   NA19144   NA19137<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ADIPOGENESIS        0.3288768 0.32899026 0.2893928 0.3297140<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ALLOGRAFT_REJECTION 0.5018248 0.49183093 0.4672342 0.4531009<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ANDROGEN_RESPONSE   0.3210905 0.28289473 0.2818011 0.2845855<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_ANGIOGENESIS        0.1794361 0.07705857 0.2076328 0.1276449<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"4limma\u5dee\u5f02\u5206\u6790\">4\u3001limma\u5dee\u5f02\u5206\u6790<\/h2>\n<ul>\n<li>\u4ee5\u4e0a\u9762array + gsva\u7684\u5206\u6790\u7ed3\u679c\u4e3a\u4f8b\uff0c\u968f\u673a\u6a21\u62df\u5206\u7ec4\u8fdb\u884climma\u5dee\u5f02\u5206\u6790<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u6a21\u62df\u5206\u7ec4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>meta = data.frame(sample=colnames(array_mt),\n<\/span><\/span><span style=\"display:flex;\"><span>                  group=rep(c(<span style=\"color:#0ff;font-weight:bold\">&#34;G1&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;G2&#34;<\/span>), each=<span style=\"color:#ff0;font-weight:bold\">18<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>head(meta)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#    sample group<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 NA19099    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 NA18523    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 NA19144    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 NA19137    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5 NA18861    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 NA19116    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## limma\u5dee\u5f02\u5206\u6790<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(limma)\n<\/span><\/span><span style=\"display:flex;\"><span>mod &lt;- model.matrix(~ factor(meta$group))\n<\/span><\/span><span style=\"display:flex;\"><span>colnames(mod) &lt;- c(<span style=\"color:#0ff;font-weight:bold\">&#34;G1&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;G2&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>fit &lt;- lmFit(res_gsva, mod)\n<\/span><\/span><span style=\"display:flex;\"><span>fit &lt;- eBayes(fit)\n<\/span><\/span><span style=\"display:flex;\"><span>tt &lt;- topTable(fit, coef=<span style=\"color:#ff0;font-weight:bold\">2<\/span>, n=<span style=\"color:#fff;font-weight:bold\">Inf<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(tt)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                                        logFC     AveExpr         t    P.Value adj.P.Val         B<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_COMPLEMENT               0.08684907 -0.10731154  2.495909 0.01676849 0.3324198 -3.059104<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_HEME_METABOLISM          0.07942485 -0.04250442  2.238926 0.03076698 0.3324198 -3.486635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_IL2_STAT5_SIGNALING      0.07839683 -0.09276742  2.193525 0.03411795 0.3324198 -3.558694<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_MITOTIC_SPINDLE         -0.10721385 -0.07656961 -2.057416 0.04617883 0.3324198 -3.768076<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_IL6_JAK_STAT3_SIGNALING  0.09342746 -0.20104143  2.026107 0.04943145 0.3324198 -3.814790<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># HALLMARK_INFLAMMATORY_RESPONSE    0.10211588 -0.10571870  1.996939 0.05263925 0.3324198 -3.857810<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"xCell\u4e0eCIBERSORT\u7b49\u514d\u75ab\u6d78\u6da6\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/072-immune-infiltration\/","pubDate":"Mon, 25 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/072-immune-infiltration\/","description":"<h2 id=\"xcell\">xCell<\/h2>\n<h4 id=\"xcell\u5305\">xCell\u5305<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>devtools::install_github(<span style=\"color:#0ff;font-weight:bold\">&#39;dviraran\/xCell&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(xCell)\n<\/span><\/span><span style=\"display:flex;\"><span>data(<span style=\"color:#0ff;font-weight:bold\">&#34;xCell.data&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u67e5\u770b\u652f\u6301\u768464\u79cd\u7ec6\u80de\u7c7b\u578b\uff0c\u540c\u4e0b\u56fe<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>colnames(xCell.data$spill$K)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u9884\u6d4b\u51fd\u6570\u7684\u5173\u952e\u53c2\u6570\u89e3\u91ca<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>?xCellAnalysis()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># expr =   \u4ea4\u4ee3\u8868\u8fbe\u77e9\u9635\uff1b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5982\u679c\u662farray\uff0c\u4e0d\u9700\u8981\u989d\u5916\u6807\u51c6\u5316\uff1b\u5982\u679c\u662fRNAseq\uff0c\u9700\u8981TPM\/FPKM\/TPM\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5bf9\u4e8e\u57fa\u56e0ID\u683c\u5f0f\u9700\u8981\u662fsymbol\u683c\u5f0f\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># rnaseq = TRUE \u6570\u636e\u662f\u5426\u4e3aRNAseq\u6570\u636e\uff0c\u5982\u679c\u662f\u82af\u7247\u6570\u636e\u8bbe\u7f6e\u4e3aFALSE<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># cell.types.use = NULL \u63d0\u4f9b\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u8bf4\u660e\u60f3\u8981\u9884\u6d4b64\u79cd\u7ec6\u80de\u4e2d\u7684\u54ea\u4e9b\u7ec6\u80de\u7c7b\u578b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># parallel.sz = 4 \u8c03\u7528\u7684\u7ebf\u7a0b\u6570\uff0c\u9ed8\u8ba4\u4e3a4<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>NOTE\uff1a<\/p>"},{"title":"ClusterGVis\u5305\u7ed8\u5236\u57fa\u56e0\u8868\u8fbe\u77e9\u9635\u70ed\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/073-clustergvis\/","pubDate":"Sun, 19 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/073-clustergvis\/","description":"<blockquote>\n<p>ClusterGVis\u5305\u662f\u4e2d\u56fd\u836f\u79d1\u5927\u5b66Jun Zhang\u535a\u58eb\u5f00\u53d1\u7684\u7cfb\u5217\u53ef\u89c6\u5316\u5de5\u5177\u5305\u4e4b\u4e00\uff0c\u53ef\u4ee5\u57fa\u56e0\u8868\u8fbe\u77e9\u9635\u8fdb\u884c\u9ad8\u7ea7\u7684\u70ed\u56fe\u53ef\u89c6\u5316\u5206\u6790\u3002\u5982\u4e0b\u6839\u636e\u5176github\u4ee5\u53ca\u5fae\u4fe1\u6559\u7a0b\u7b80\u5355\u6574\u7406\u4e00\u4e0b\u81ea\u5df1\u611f\u5174\u8da3\u7684\u7528\u6cd5\u3002<\/p>"},{"title":"survival\u5305\u751f\u5b58\u5206\u6790\u53caglmnet\u5305lasso\u56de\u5f52","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/059-survival-lasso\/","pubDate":"Sat, 28 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/059-survival-lasso\/","description":"<blockquote>\n<p>\u751f\u5b58\u5206\u6790(survival analysis)\u7684\u4e3b\u8981\u76ee\u7684\u662f\u53d1\u73b0\u4e0e\u60a3\u8005\u751f\u5b58\u4e8b\u4ef6\u76f8\u5173\u7684\u6307\u6807\u56e0\u7d20\uff0c\u4f8b\u5982\u5e74\u9f84\u6027\u522b\u3001\u57fa\u56e0\u8868\u8fbe\/\u7a81\u53d8\u7b49\u3002\u5982\u4e0b\u5b66\u4e60\u76f8\u5173\u57fa\u7840\u77e5\u8bc6\u53ca\u51e0\u79cd\u5e38\u89c1\u7684\u751f\u5b58\u5206\u6790\u65b9\u6cd5\u3002<\/p>"},{"title":"MuSiC\u5305\u6839\u636escRNAseq\u9884\u6d4bBulk\u7ec6\u80de\u7ec4\u6210","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/074-music\/","pubDate":"Sun, 26 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/074-music\/","description":"<blockquote>\n<p>MuSiC(MUlti-Subject SIngle Cell deconvolution)\u662f\u6765\u81ea\u5bbe\u5915\u6cd5\u5c3c\u4e9a\u5927\u5b66Biostatistics, Epidemiology and Informatics\u7cfb\u7684Mingyao Li\u8bfe\u9898\u7ec4\u4e8e2019\u5e74\u53d1\u8868\u4e8eNature Communication\u7684\u4e00\u4e2a\u5de5\u5177R\u5305\uff0c\u53ef\u6839\u636e\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u4fe1\u606f\u63a8\u6d4bBulk RNA-seq\u7ec6\u80de\u7ec4\u6210\u3002\u800c\u540e\uff0c\u8be5\u56e2\u961f\u53c8\u4e8e2022\u5e74\u5728Briefing in bioinformatics\u53d1\u8868\u4e86\u6269\u5c55\u7248\u672cMuSiC2\uff0c\u53ef\u4ee5\u8003\u8651\u66f4\u590d\u6742\u7684\u573a\u666f\u3002<\/p>"},{"title":"\u4eceRNAseq\u7684fastq.gz\u63d0\u53d6\u8868\u8fbe\u77e9\u9635","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/060-rnaseq-matrix\/","pubDate":"Sun, 29 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/060-rnaseq-matrix\/","description":"<blockquote>\n<p>RNA-seq\u6570\u636e\u6bd4\u5bf9\u6d41\u7a0b\u4e3b\u8981\u5206\u4e3a\u4e09\u6b65\uff081\uff09\u6574\u7406\u6570\u636e\uff1b\uff082\uff09\u8d28\u63a7\uff1b\uff083\uff09\u6bd4\u5bf9\u3002\u5176\u4e2d\u6bcf\u4e00\u6b65\u90fd\u6d89\u53ca\u5230\u82e5\u5e72\u8f6f\u4ef6\u7684\u7528\u6cd5\uff0c\u5982\u4e0b\u7b80\u5355\u6574\u7406\u57fa\u672c\u7684\u5206\u6790\u6d41\u7a0b\u3002<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-c3ca775f4c1f19d6.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/20354525-c3ca775f4c1f19d6.png\" alt=\"image.png\" style=\"zoom:67%;\" \/>\n<p>\u793a\u4f8b\u6570\u636e\uff1aGSE158623\u4e2d6\u4e2a\u6837\u672c\u7684RNA-seq\u6d4b\u5e8f\u7ed3\u679c(human)\uff0c\u5bf9\u5e94SRR12720999~SRR12721004<\/p>"},{"title":"gseapy\u5bcc\u96c6\u5206\u6790\u4e0e\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/061-gseapy\/","pubDate":"Tue, 22 Jul 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/061-gseapy\/","description":"<p>\u53c2\u8003<\/p>\n<ul>\n<li><a href=\"https:\/\/gseapy.readthedocs.io\/en\/latest\/index.html\">https:\/\/gseapy.readthedocs.io\/en\/latest\/index.html<\/a><\/li>\n<li>\u793a\u4f8b\u6570\u636e\u6765\u81ea <a href=\"https:\/\/github.com\/zqfang\/GSEApy\/tree\/master\/tests\/data\">https:\/\/github.com\/zqfang\/GSEApy\/tree\/master\/tests\/data<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> os\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> scanpy <span style=\"color:#fff;font-weight:bold\">as<\/span> sc\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> gseapy <span style=\"color:#fff;font-weight:bold\">as<\/span> gp\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> gseapy <span style=\"color:#fff;font-weight:bold\">import<\/span> barplot, dotplot\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> matplotlib.pyplot <span style=\"color:#fff;font-weight:bold\">as<\/span> plt\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"0-\u57fa\u56e0\u96c6\u83b7\u53d6\">0. \u57fa\u56e0\u96c6\u83b7\u53d6<\/h1>\n<ul>\n<li>Enrichr API supported organisms:  Human, Mouse, Yeast, Fly, Fish, Worm<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>names = gp.get_library_name(organism =  <span style=\"color:#0ff;font-weight:bold\">&#34;Human&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">len<\/span>(names)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 217<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>[name <span style=\"color:#fff;font-weight:bold\">for<\/span> name in names <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#0ff;font-weight:bold\">&#34;GO&#34;<\/span> in name]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;GO_Biological_Process_2021&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Biological_Process_2023&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Biological_Process_2025&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Cellular_Component_2021&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Cellular_Component_2023&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Cellular_Component_2025&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Molecular_Function_2021&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Molecular_Function_2023&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Molecular_Function_2025&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;SynGO_2022&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;SynGO_2024&#39;]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>[name <span style=\"color:#fff;font-weight:bold\">for<\/span> name in names <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#0ff;font-weight:bold\">&#34;KEGG&#34;<\/span> in name]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;KEGG_2013&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;KEGG_2015&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;KEGG_2016&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;KEGG_2019_Human&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;KEGG_2019_Mouse&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;KEGG_2021_Human&#39;]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>[name <span style=\"color:#fff;font-weight:bold\">for<\/span> name in names <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#0ff;font-weight:bold\">&#34;MSigDB&#34;<\/span> in name]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;MSigDB_Computational&#39;, &#39;MSigDB_Hallmark_2020&#39;, &#39;MSigDB_Oncogenic_Signatures&#39;]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>kegg = gp.get_library(name=<span style=\"color:#0ff;font-weight:bold\">&#39;KEGG_2021_Human&#39;<\/span>, organism=<span style=\"color:#0ff;font-weight:bold\">&#39;Human&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(kegg) <span style=\"color:#007f7f\"># dict<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>kegg[<span style=\"color:#0ff;font-weight:bold\">&#39;AMPK signaling pathway&#39;<\/span>][:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;RAB2A&#39;, &#39;PPP2R1A&#39;, &#39;TSC2&#39;, &#39;TSC1&#39;]<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8fd8\u652f\u6301\u5bf9MSigDB\u57fa\u56e0\u96c6\u6570\u636e\u5e93\u7684\u83b7\u53d6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> gseapy <span style=\"color:#fff;font-weight:bold\">import<\/span> Msigdb\n<\/span><\/span><span style=\"display:flex;\"><span>msig = Msigdb()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># all available versions<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>msig.list_dbver() \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># all types of gene sets given a dbver<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>msig.list_category(dbver=<span style=\"color:#0ff;font-weight:bold\">&#34;2025.1.Hs&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># all gene sets of one type<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gmt = msig.get_gmt(category=<span style=\"color:#0ff;font-weight:bold\">&#39;h.all&#39;<\/span>, dbver=<span style=\"color:#0ff;font-weight:bold\">&#34;2025.1.Hs&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(gmt)   <span style=\"color:#007f7f\"># dict<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gmt.keys()  <span style=\"color:#007f7f\"># hallmark pathway names<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gmt[<span style=\"color:#0ff;font-weight:bold\">&#34;HALLMARK_ADIPOGENESIS&#34;<\/span>] <span style=\"color:#007f7f\"># gene list<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><\/blockquote>\n<h1 id=\"1-ora\u5bcc\u96c6\">1. ORA\u5bcc\u96c6<\/h1>\n<h2 id=\"11-\u5206\u6790\">1.1 \u5206\u6790<\/h2>\n<ul>\n<li>Online analysis<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">44\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">45\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">46\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">47\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 1) \u4e24\u4e2a\u6700\u91cd\u8981\u7684\u53c2\u6570 \uff08\u540e\u540c\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># gene_list<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_list=<span style=\"color:#0ff;font-weight:bold\">&#34;tests\/data\/gene_list.txt&#34;<\/span>         <span style=\"color:#007f7f\"># file path, one gene per row<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_list= [<span style=\"color:#0ff;font-weight:bold\">&#34;RAB2A&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PRKAB2&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;PRKAA1&#34;<\/span>]    <span style=\"color:#007f7f\"># list of genes<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># gene_sets (from enrichr API)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_sets=<span style=\"color:#0ff;font-weight:bold\">&#39;KEGG_2016&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_sets=[<span style=\"color:#0ff;font-weight:bold\">&#39;KEGG_2021_Human&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;GO_Biological_Process_2025&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gene_list = pd.read_csv(<span style=\"color:#0ff;font-weight:bold\">&#34;tests\/data\/gene_list.txt&#34;<\/span>, header=<span style=\"color:#fff;font-weight:bold\">None<\/span>)[<span style=\"color:#ff0;font-weight:bold\">0<\/span>].tolist()\n<\/span><\/span><span style=\"display:flex;\"><span>gene_list[:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;IGKV4-1&#39;, &#39;CD55&#39;, &#39;IGKC&#39;, &#39;PPFIBP1&#39;]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>enr = gp.enrichr(gene_list=gene_list, <span style=\"color:#007f7f\"># or &#34;.\/tests\/data\/gene_list.txt&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                 gene_sets=[<span style=\"color:#0ff;font-weight:bold\">&#39;GO_Biological_Process_2025&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>                 organism=<span style=\"color:#0ff;font-weight:bold\">&#39;human&#39;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                 outdir=<span style=\"color:#fff;font-weight:bold\">None<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                )\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>enr.results.head(<span style=\"color:#ff0;font-weight:bold\">5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Index([&#39;Gene_set&#39;, &#39;Term&#39;, &#39;Overlap&#39;, &#39;P-value&#39;, &#39;Adjusted P-value&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        &#39;Old P-value&#39;, &#39;Old Adjusted P-value&#39;, &#39;Odds Ratio&#39;, &#39;Combined Score&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        &#39;Genes&#39;],<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       dtype=&#39;object&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 2) \u8bbe\u7f6e\u7ed3\u679c\u5bfc\u51fa\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>enr = gp.enrichr(gene_list=gene_list, \n<\/span><\/span><span style=\"display:flex;\"><span>                 gene_sets=[<span style=\"color:#0ff;font-weight:bold\">&#39;GO_Biological_Process_2025&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>                 organism=<span style=\"color:#0ff;font-weight:bold\">&#39;human&#39;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                 outdir=<span style=\"color:#0ff;font-weight:bold\">&#34;enrichr_kegg&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                )\n<\/span><\/span><span style=\"display:flex;\"><span>os.listdir(<span style=\"color:#0ff;font-weight:bold\">&#34;enrichr_kegg&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [&#39;GO_Biological_Process_2025.human.enrichr.reports.txt&#39;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;GO_Biological_Process_2025.human.enrichr.reports.pdf&#39;]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## 3) \u81ea\u5b9a\u4e49Background genes (P\u503c\u4f1a\u5b58\u5728\u4e00\u5b9a\u5dee\u5f02)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>enr = gp.enrichr(gene_list=gene_list, \n<\/span><\/span><span style=\"display:flex;\"><span>                 gene_sets=[<span style=\"color:#0ff;font-weight:bold\">&#39;GO_Biological_Process_2025&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>                 organism=<span style=\"color:#0ff;font-weight:bold\">&#39;human&#39;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                 background=<span style=\"color:#0ff;font-weight:bold\">&#34;tests\/data\/background.txt&#34;<\/span>,  <span style=\"color:#007f7f\"># \u81ea\u5b9a\u4e49\u80cc\u666f\u57fa\u56e0 \/ or list object<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                 outdir=<span style=\"color:#fff;font-weight:bold\">None<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                )\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>Offline analysis  (\u672c\u5730\u63d0\u4f9b\u901a\u8def\u57fa\u56e0\u96c6\u6570\u636e)<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> gseapy.parser <span style=\"color:#fff;font-weight:bold\">import<\/span> read_gmt\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>gmt_dict = read_gmt(<span style=\"color:#0ff;font-weight:bold\">&#34;tests\/data\/c2.cp.kegg.v7.5.1.symbols.gmt&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>gmt_dict.keys()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>enr2 = gp.enrich(gene_list=gene_list, <span style=\"color:#007f7f\"># or gene_list=glist<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                 gene_sets=[<span style=\"color:#0ff;font-weight:bold\">&#34;tests\/data\/c2.cp.kegg.v7.5.1.symbols.gmt&#34;<\/span>], \n<\/span><\/span><span style=\"display:flex;\"><span>                 background=<span style=\"color:#fff;font-weight:bold\">None<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                 outdir=<span style=\"color:#fff;font-weight:bold\">None<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                 verbose=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>enr2.results.head(<span style=\"color:#ff0;font-weight:bold\">5<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"12-\u53ef\u89c6\u5316\">1.2 \u53ef\u89c6\u5316<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ofname \u8bbe\u7f6e\u56fe\u7247\u7684\u5bfc\u51fa\u8def\u5f84\uff0c\u82e5\u4e3aNone\u5219\u4e0d\u4fdd\u5b58\u3002\u4e5f\u652f\u6301\u540e\u7eed\u4f7f\u7528plt\u8bed\u6cd5\u8fdb\u4e00\u6b65\u8c03\u6574\u56fe\u7247<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = dotplot(enr.results,\n<\/span><\/span><span style=\"display:flex;\"><span>              column=<span style=\"color:#0ff;font-weight:bold\">&#34;Adjusted P-value&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              x=<span style=\"color:#0ff;font-weight:bold\">&#39;Gene_set&#39;<\/span>, <span style=\"color:#007f7f\"># set x axis, so you could do a multi-sample\/library comparsion<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>              size=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              cutoff=<span style=\"color:#ff0;font-weight:bold\">0.05<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>              top_term=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              figsize=(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>              title = <span style=\"color:#0ff;font-weight:bold\">&#34;GO_BP&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              xticklabels_rot=<span style=\"color:#ff0;font-weight:bold\">45<\/span>, <span style=\"color:#007f7f\"># rotate xtick labels<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>              show_ring=<span style=\"color:#fff;font-weight:bold\">True<\/span>, <span style=\"color:#007f7f\"># set to False to revmove outer ring<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>              marker=<span style=\"color:#0ff;font-weight:bold\">&#39;o&#39;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              ofname=<span style=\"color:#0ff;font-weight:bold\">&#39;.\/plot\/p1.png&#39;<\/span>   \n<\/span><\/span><span style=\"display:flex;\"><span>             )\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = barplot(enr.results,\n<\/span><\/span><span style=\"display:flex;\"><span>              column=<span style=\"color:#0ff;font-weight:bold\">&#34;Adjusted P-value&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              group=<span style=\"color:#0ff;font-weight:bold\">&#39;Gene_set&#39;<\/span>, <span style=\"color:#007f7f\"># set group, so you could do a multi-sample\/library comparsion<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>              size=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              top_term=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>              figsize=(<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>              <span style=\"color:#007f7f\">#color=[&#39;darkred&#39;, &#39;darkblue&#39;] # set colors for group<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>              color = {<span style=\"color:#0ff;font-weight:bold\">&#39;GO_Biological_Process_2025&#39;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#39;salmon&#39;<\/span>},\n<\/span><\/span><span style=\"display:flex;\"><span>              ofname=<span style=\"color:#0ff;font-weight:bold\">&#39;.\/plot\/p2.png&#39;<\/span>   \n<\/span><\/span><span style=\"display:flex;\"><span>             )\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250723083652809.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/img01image-20250723083652809.png\" alt=\"image-20250723083652809\" style=\"zoom:50%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>ax = dotplot(enr.res2d, title=<span style=\"color:#0ff;font-weight:bold\">&#39;Enrichr&#39;<\/span>,cmap=<span style=\"color:#0ff;font-weight:bold\">&#39;viridis_r&#39;<\/span>, size=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,  figsize=(<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">5<\/span>), ofname=<span style=\"color:#0ff;font-weight:bold\">&#39;.\/plot\/p3.png&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ax = barplot(enr.res2d, title=<span style=\"color:#0ff;font-weight:bold\">&#39;Enrichr&#39;<\/span>,cmap=<span style=\"color:#0ff;font-weight:bold\">&#39;viridis_r&#39;<\/span>, size=<span style=\"color:#ff0;font-weight:bold\">4<\/span>, figsize=(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>), color=<span style=\"color:#0ff;font-weight:bold\">&#39;darkred&#39;<\/span>, ofname=<span style=\"color:#0ff;font-weight:bold\">&#39;.\/plot\/p4.png&#39;<\/span>)  <span style=\"color:#007f7f\"># \u5dee\u522b\u4e0d\u5927<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01image-20250723084005190.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/img01image-20250723084005190.png\" alt=\"image-20250723084005190\" style=\"zoom:50%;\" \/>\n<h1 id=\"2-prerank\u5bcc\u96c6\">2. Prerank\u5bcc\u96c6<\/h1>\n<p>\u57fa\u4e8e\u5dee\u5f02\u5206\u6790\u7ed3\u679c\u7684GSEA<\/p>"},{"title":"\u751f\u4fe1\u76f8\u5173\u7f51\u7ad9\u6570\u636e\u5e93\u96c6\u9526","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/075-bio-databases\/","pubDate":"Sun, 02 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/075-bio-databases\/","description":"<h2 id=\"1hpa\">1\u3001HPA<\/h2>\n<ul>\n<li>HPA\uff1athe Human Protein Atlas\uff0c\u75312003\u5e74\u6765\u81ea\u745e\u5178\u7684\u79d1\u7814\u673a\u6784\u53d1\u8d77\uff0c\u65e8\u5728\u7ed8\u5236\u7efc\u5408\u6027\u4eba\u7c7b\u86cb\u767d\u8d28\u56fe\u8c31\u3002<\/li>\n<li><a href=\"https:\/\/www.proteinatlas.org\/\">https:\/\/www.proteinatlas.org\/<\/a><\/li>\n<li>\u86cb\u767d\u8d28\u8868\u8fbe\u6570\u636e\u5e93\uff0c\u5e38\u89c1\u7528\u9014\u5305\u62ec\uff1a\n<ul>\n<li>\uff081\uff09\u67e5\u770b\u7279\u5b9a\u57fa\u56e0\u5728\u4e0d\u540c\u7ec4\u7ec7\u3001\u8111\u533a\uff0c\u7ec6\u80de\u7c7b\u578b\uff0c\u7ec4\u7ec7\u7ec6\u80de\u7c7b\u578b\uff0c\u75be\u75c5\uff08\u764c\u75c7\uff09\uff0c\u514d\u75ab\u7ec6\u80de\uff0c\u80bf\u7624\u7ec6\u80de\u7cfb\u7b49\u8868\u8fbe\u60c5\u51b5\u3002<\/li>\n<li>\uff082\uff09\u6570\u636e\u6316\u6398\u7c7b\u6587\u7ae0\u5e38\u4f7f\u7528\u5176\u8fdb\u884c\u6bd4\u8f83\u57fa\u56e0\u5728\u80bf\u7624\u90e8\u4f4d\u4e0e\u76f8\u5e94\u6b63\u5e38\u90e8\u4f4d\u7684\u86cb\u767d\u6c34\u5e73\u8868\u8fbe\u5dee\u5f02\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401152922221.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230401152922221.png\" alt=\"image-20230401152922221\" style=\"zoom:80%;\" \/>\n<h2 id=\"2encori\">2\u3001ENCORI<\/h2>\n<ul>\n<li>ENCORI\uff0cThe Encyclopedia of RNA Interactomes\uff0c\u7531\u4e2d\u5c71\u5927\u5b66\u751f\u547d\u79d1\u5b66\u5b66\u9662\u5c48\u826f\u9e44\u56e2\u961f\u5f00\u53d1\uff0c\u4e8e2014\u5e74\u53d1\u8868\u4e8eNucleic Acids Res\u3002<\/li>\n<li><a href=\"https:\/\/starbase.sysu.edu.cn\/index.php\">https:\/\/starbase.sysu.edu.cn\/index.php<\/a><\/li>\n<li>miRNA\u3001lncRNA\u3001RBP\u7b49\u591a\u7ef4\u76f8\u4e92\u4f5c\u7528\u7f51\u7edc\uff0c\u5e38\u89c1\u7528\u9014\u5305\u62ec\n<ul>\n<li>miRNA\/RBP\u7684\u9776\u6807\u67e5\u8be2(mRNA,lncRNA&hellip;)<\/li>\n<li>RNA interaction, ceRNA network<\/li>\n<li>TCGA\u80bf\u7624\u7684\u5dee\u5f02\u8868\u8fbe\uff0c\u751f\u5b58\u5206\u6790\uff0c\u76f8\u5173\u6027\u7b49<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230402101214897.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230402101214897.png\" alt=\"image-20230402101214897\" style=\"zoom: 80%;\" \/>\n<h2 id=\"3tcia\">3\u3001TCIA<\/h2>\n<ul>\n<li>TCIA\uff0cThe Cancer Immunome Database\uff0c\u7531\u6765\u81ea\u5965\u5730\u5229\u7684\u56e0\u65af\u5e03\u9c81\u514b\u5927\u5b66\u533b\u5b66\u9662Zlatko Trajanoski\u56e2\u961f\u5f00\u53d1\uff0c\u4e8e2017\u5e74\u53d1\u8868\u4e8eCell Reports<\/li>\n<li><a href=\"https:\/\/tcia.at\/home\">https:\/\/tcia.at\/home<\/a><\/li>\n<li>20\u79cdsolid cancer\u7684\u514d\u75ab\u76f8\u5173\u5206\u6790\uff0c\u4f8b\u5982\n<ul>\n<li>\u514d\u75ab\u57fa\u56e0\u8868\u8fbe\u3001\u7ec6\u80de\u6d78\u6da6\u3001\u80bf\u7624\u4e9a\u514b\u9686\u7b49<\/li>\n<li>\u4eae\u70b9\u4e4b\u4e00\u662f\u63d0\u51fa<strong>Immunophenoscore<\/strong>\u6307\u6807\u7528\u4e8e\u9884\u6d4b\u514d\u75ab\u6cbb\u7597\u54cd\u5e94\n<ul>\n<li><a href=\"https:\/\/github.com\/icbi-lab\/Immunophenogram\">https:\/\/github.com\/icbi-lab\/Immunophenogram<\/a><\/li>\n<\/ul>\n<\/li>\n<li>\u6837\u672c\u4e34\u5e8a\u4fe1\u606f\u4e5f\u6574\u7406\u7684\u8f83\u4e3a\u5b8c\u6574<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230402150744208.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230402150744208.png\" alt=\"image-20230402150744208\"  \/>\n<\/p>"},{"title":"TCGA\u7684SNV\u6570\u636e\u4e0b\u8f7d\u4e0emaftools\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/076-tcga-snv\/","pubDate":"Sun, 09 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/076-tcga-snv\/","description":"<h3 id=\"1tcgabiolinks\u4e0b\u8f7d\u6570\u636e\">1\u3001TCGAbiolinks\u4e0b\u8f7d\u6570\u636e<\/h3>\n<ul>\n<li>\u4f7f\u7528TCGAbiolinks\u4e0b\u8f7d\u7279\u5b9a\u80bf\u7624\u7c7b\u578b\u7684SNV\u6570\u636e<\/li>\n<li><a href=\"https:\/\/bioconductor.org\/packages\/release\/bioc\/vignettes\/TCGAbiolinks\/inst\/doc\/mutation.html\">https:\/\/bioconductor.org\/packages\/release\/bioc\/vignettes\/TCGAbiolinks\/inst\/doc\/mutation.html<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(TCGAbiolinks)\n<\/span><\/span><span style=\"display:flex;\"><span>query &lt;- GDCquery(\n<\/span><\/span><span style=\"display:flex;\"><span>    project = <span style=\"color:#0ff;font-weight:bold\">&#34;TCGA-CHOL&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>    data.category = <span style=\"color:#0ff;font-weight:bold\">&#34;Simple Nucleotide Variation&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>    access = <span style=\"color:#0ff;font-weight:bold\">&#34;open&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>    legacy = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>    data.type = <span style=\"color:#0ff;font-weight:bold\">&#34;Masked Somatic Mutation&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>GDCdownload(query)\n<\/span><\/span><span style=\"display:flex;\"><span>maf &lt;- GDCprepare(query)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(maf)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 3764  141<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) \u56e0\u540e\u7eed\u9700\u8981\uff0c\u4fee\u6539Tumor_Sample_Barcode\u5217<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>maf$long_Barcode = maf$Tumor_Sample_Barcode \n<\/span><\/span><span style=\"display:flex;\"><span>maf$Tumor_Sample_Barcode = substr(maf$Tumor_Sample_Barcode,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">12<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>length(unique(maf$Tumor_Sample_Barcode))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 51<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) \u8bfb\u53d6\u4e34\u5e8a\u751f\u5b58\u6570\u636e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>clinical = readxl::read_xlsx(<span style=\"color:#0ff;font-weight:bold\">&#34;TCGA_Pan_Cancer_Clinical_Data_mmc1.xlsx&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>clinical_sle = clinical %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::filter(type==<span style=\"color:#0ff;font-weight:bold\">&#34;CHOL&#34;<\/span>)  %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::select(bcr_patient_barcode, OS, OS.time, clinical_stage) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>\tdplyr::rename(Tumor_Sample_Barcode=bcr_patient_barcode)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(clinical_sle)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 45 <\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2maftools\u53ef\u89c6\u5316\">2\u3001maftools\u53ef\u89c6\u5316<\/h3>\n<ul>\n<li><a href=\"https:\/\/bioconductor.org\/packages\/release\/bioc\/vignettes\/maftools\/inst\/doc\/maftools.html\">https:\/\/bioconductor.org\/packages\/release\/bioc\/vignettes\/maftools\/inst\/doc\/maftools.html<\/a><\/li>\n<li><a href=\"https:\/\/www.jieandze1314.com\/post\/cnposts\/237\/\">https:\/\/www.jieandze1314.com\/post\/cnposts\/237\/<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(maftools)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>maf_obj = read.maf(maf = maf, clinicalData = clinical_sle)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6bcf\u4e2a\u6837\u672c\u7684\u7a81\u53d8\u60c5\u51b5\u7edf\u8ba1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>getSampleSummary(maf_obj)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6bcf\u4e2a\u57fa\u56e0\u7684\u7a81\u53d8\u7c7b\u578b\u7edf\u8ba1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>getGeneSummary(maf_obj)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"21\u6982\u62ec\u56fe\">2.1\u6982\u62ec\u56fe<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>plotmafSummary(maf = maf_obj, rmOutlier = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t   addStat = <span style=\"color:#0ff;font-weight:bold\">&#39;median&#39;<\/span>, dashboard = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t   titvRaw = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409170234902.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409170234902.png\" alt=\"image-20230409170234902\" style=\"zoom:50%;\" \/>\n<h4 id=\"22-\u57fa\u56e0\u7011\u5e03\u56fe\">2.2 \u57fa\u56e0\u7011\u5e03\u56fe<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>oncoplot(maf = maf_obj, top = <span style=\"color:#ff0;font-weight:bold\">10<\/span>)  <span style=\"color:#007f7f\"># \u5982\u4e0b\u56fe<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u6dfb\u52a0\u4e34\u5e8a\u6ce8\u91ca<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>oncoplot(maf = maf_obj, top = <span style=\"color:#ff0;font-weight:bold\">10<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>\t  \t clinicalFeatures = c(<span style=\"color:#0ff;font-weight:bold\">&#39;clinical_stage&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;OS&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>\t  \t draw_titv = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u9009\u62e9\u7279\u5b9a\u57fa\u56e0\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>genes = sample(maf_obj@data$Hugo_Symbol,<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>oncoplot(maf = maf_obj, genes = genes,\n<\/span><\/span><span style=\"display:flex;\"><span>\t  \t clinicalFeatures = c(<span style=\"color:#0ff;font-weight:bold\">&#39;clinical_stage&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;OS&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>\t  \t draw_titv = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409170615418.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409170615418.png\" alt=\"image-20230409170615418\" style=\"zoom: 50%;\" \/>\n<h4 id=\"23-\u8f6c\u6362\u98a0\u5012\u7edf\u8ba1\">2.3 \u8f6c\u6362\u98a0\u5012\u7edf\u8ba1<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Transition \u8f6c\u6362 \uff1a \u560c\u5464(AG)\u6216\u5627\u5576(CT)\u5185\u90e8\u4e4b\u95f4\u8f6c\u6362<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Transversions \u98a0\u5012\uff1a\u560c\u5464\u4e0e\u5627\u5576\u95f4\u4e92\u76f8\u8f6c\u6362<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>maf_obj.titv = titv(maf = maf_obj, plot = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>, useSyn = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>plotTiTv(res = maf_obj.titv)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409171216097.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409171216097.png\" alt=\"image-20230409171216097\" style=\"zoom:50%;\" \/>\n<h4 id=\"24-\u57fa\u56e0\u5bf9\u7a81\u53d8\u7edf\u8ba1\">2.4 \u57fa\u56e0\u5bf9\u7a81\u53d8\u7edf\u8ba1<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># green: co-occuring<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># yellow: mutually exclusive<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>somaticInteractions(maf = maf_obj, top = <span style=\"color:#ff0;font-weight:bold\">25<\/span>, pvalue = c(<span style=\"color:#ff0;font-weight:bold\">0.05<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>genes = sample(maf_obj@data$Hugo_Symbol,<span style=\"color:#ff0;font-weight:bold\">25<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>somaticInteractions(maf = maf_obj, genes  = genes , pvalue = c(<span style=\"color:#ff0;font-weight:bold\">0.05<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409171336514.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409171336514.png\" alt=\"image-20230409171336514\" style=\"zoom:50%;\" \/>\n<h4 id=\"25-\u751f\u5b58\u5206\u6790\">2.5 \u751f\u5b58\u5206\u6790<\/h4>\n<ul>\n<li>\u6839\u636e\u7279\u5b9a\u57fa\u56e0\u662f\u5426\u7a81\u53d8\u5c06\u75c5\u4eba\u5206\u6210WT\u4e0eMutant\u4e24\u7ec4<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>mafSurvival(maf = maf_obj, genes = <span style=\"color:#0ff;font-weight:bold\">&#39;TP53&#39;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\ttime = <span style=\"color:#0ff;font-weight:bold\">&#39;OS.time&#39;<\/span>, Status = <span style=\"color:#0ff;font-weight:bold\">&#39;OS&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     Group medianTime  N<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1: Mutant        732  4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2:     WT        650 41<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u63d0\u53d6\u4fe1\u606f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># maf_obj@clinical.data %&gt;% <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \tdplyr::mutate(Group=ifelse(Tumor_Sample_Barcode %in% <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \t\tsubset(maf_obj@data, Hugo_Symbol==&#34;TP53&#34;)$Barcode,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \t\t&#34;Mutant&#34;,&#34;WT&#34;)) <\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409171710303.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409171710303.png\" alt=\"image-20230409171710303\" style=\"zoom: 67%;\" \/>\n<h4 id=\"26-\u57fa\u56e0\u5bf9\u7684\u751f\u5b58\u76f8\u5173\u6027\">2.6 \u57fa\u56e0\u5bf9\u7684\u751f\u5b58\u76f8\u5173\u6027<\/h4>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>prog_geneset = survGroup(maf = maf_obj, top = <span style=\"color:#ff0;font-weight:bold\">200<\/span>, geneSetSize = <span style=\"color:#ff0;font-weight:bold\">2<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t time = <span style=\"color:#0ff;font-weight:bold\">&#34;OS.time&#34;<\/span>, Status = <span style=\"color:#0ff;font-weight:bold\">&#34;OS&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t verbose = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>,minSamples = <span style=\"color:#ff0;font-weight:bold\">3<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>prog_geneset\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#    Gene_combination P_value       hr WT Mutant<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1:     PBRM1_PLXNA4   0.243 2.36e+00 42      3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2:       PBRM1_PCLO   0.294 3.46e-01 42      3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3:       PBRM1_TP53   0.320 3.64e-01 42      3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>mafSurvGroup(maf = maf_obj, geneSet = c(<span style=\"color:#0ff;font-weight:bold\">&#34;PBRM1&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;PLXNA4&#34;<\/span>), \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t time = <span style=\"color:#0ff;font-weight:bold\">&#34;OS.time&#34;<\/span>, Status = <span style=\"color:#0ff;font-weight:bold\">&#34;OS&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409171856663.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230409171856663.png\" alt=\"image-20230409171856663\" style=\"zoom: 67%;\" \/>"},{"title":"\u80bf\u7624\u4e9a\u578b\u5206\u7fa4\u5de5\u5177ConsensusClusterPlus","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/077-consensusclusterplus\/","pubDate":"Thu, 20 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/077-consensusclusterplus\/","description":"<blockquote>\n<p>ConsensusClusterPlus\u5305\u662f\u80bf\u7624\u5206\u578b\u7814\u7a76\u7684\u5e38\u7528\u5de5\u5177\uff0c\u5176\u4e8e2010\u5e74\u53d1\u8868\u4e8eBioinformatics\u3002<\/p>\n<ul>\n<li>Paper\uff1ahttps:\/\/academic.oup.com\/bioinformatics\/article\/26\/12\/1572\/281699<\/li>\n<li>Tutorial\uff1ahttps:\/\/bioconductor.org\/packages\/release\/bioc\/vignettes\/ConsensusClusterPlus\/inst\/doc\/ConsensusClusterPlus.pdf<\/li>\n<\/ul><\/blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># BiocManager::install(&#34;ConsensusClusterPlus&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(ConsensusClusterPlus)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1\u793a\u4f8b\u8868\u8fbe\u77e9\u9635\">1\u3001\u793a\u4f8b\u8868\u8fbe\u77e9\u9635<\/h2>\n<ul>\n<li>\u884c\u540d\u4e3a\u57fa\u56e0\uff0c\u5217\u540d\u4e3a\u6837\u672c\u7684\u57fa\u56e0\u8868\u8fbe\u77e9\u9635\uff1b\u6839\u636e\u9700\u8981\uff0c\u8fdb\u884c\u6807\u51c6\u5316\u5904\u7406<\/li>\n<li>\u57fa\u56e0\u96c6\u7684\u9009\u62e9\u662f\u5173\u952e\u7684\u4e00\u6b65\uff0c\u53ef\u6839\u636e\u7edf\u8ba1\u5b66\uff08\u9ad8\u53d8\u57fa\u56e0\uff09\u6216\u8005\u751f\u7269\u5b66\uff08\u7279\u5b9a\u529f\u80fd\u76f8\u5173\u57fa\u56e0\uff09\u8fdb\u884c\u9009\u62e9<\/li>\n<li>\u5982\u4e0b\u662f\u53c2\u8003\u6559\u7a0b\u7684\u6570\u636e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(ALL)\n<\/span><\/span><span style=\"display:flex;\"><span>data(ALL)\n<\/span><\/span><span style=\"display:flex;\"><span>d=exprs(ALL)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(d)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 12625   128<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>mads=apply(d,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,mad)\n<\/span><\/span><span style=\"display:flex;\"><span>d=d[rev(order(mads))[1:<span style=\"color:#ff0;font-weight:bold\">5000<\/span>],]  <span style=\"color:#007f7f\"># \u7b5b\u9009\u9ad8\u65b9\u5dee\u57fa\u56e0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>dim(d)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 5000  128<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u6807\u51c6\u5316\u5904\u7406\uff1a\u6bcf\u884c\uff08\u57fa\u56e0\uff09\u51cf\u53bb\u6bcf\u884c\u7684\u4e2d\u4f4d\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>d = sweep(d,<span style=\"color:#ff0;font-weight:bold\">1<\/span>, apply(d,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,median,na.rm=<span style=\"color:#fff;font-weight:bold\">T<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>d[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#             01005     01010       03002     04006<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 36638_at 1.556121 0.9521271 -0.05018082  4.780378<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 39318_at 1.191353 2.5013225 -2.38793537 -1.199521<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 38514_at 1.020716 3.2785671  1.55949145 -3.345919<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 266_s_at 1.829260 0.3624327  1.54913247 -1.286294<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2\u6837\u672c\u4e9a\u578b\u9274\u5b9a\">2\u3001\u6837\u672c\u4e9a\u578b\u9274\u5b9a<\/h2>\n<ul>\n<li>\u5b9e\u9645\u5c31\u662f\u4e00\u4e2a\u51fd\u6570\u5373\u53ef\uff1a<code>ConsensusClusterPlus()<\/code><\/li>\n<li>\u5176\u4e2d\u6d89\u53ca\u5230\u8f83\u591a\u53c2\u6570\u7684\u9009\u62e9\uff0c\u5177\u4f53\u5982\u4e0b<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u9ed8\u8ba4\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ConsensusClusterPlus(d,\n<\/span><\/span><span style=\"display:flex;\"><span>                     maxK=<span style=\"color:#ff0;font-weight:bold\">3<\/span>,      \n<\/span><\/span><span style=\"display:flex;\"><span>                     reps=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     pItem=<span style=\"color:#ff0;font-weight:bold\">0.8<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     pFeature=<span style=\"color:#ff0;font-weight:bold\">1<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     title=<span style=\"color:#0ff;font-weight:bold\">&#34;untitled_consensus_cluster&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     clusterAlg=<span style=\"color:#0ff;font-weight:bold\">&#34;hc&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     distance=<span style=\"color:#0ff;font-weight:bold\">&#34;pearson&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     plot=<span style=\"color:#fff;font-weight:bold\">NULL<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     writeTable=<span style=\"color:#fff;font-weight:bold\">FALSE<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                     seed=<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u53c2\u6570\u542b\u4e49<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># maxK\uff1a\u8003\u8651\u7684\u6700\u5927\u805a\u7c7b\u6570\uff0c\u5efa\u8bae\u53d610~20<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># reps\uff1a\u62bd\u6837\u6b21\u6570\uff0c\u5efa\u8bae1000<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># pItem\u4e0epFeature\uff1a\u5206\u522b\u8868\u793a\u5bf9\u6837\u672c\u4e0e\u57fa\u56e0\u7684\u62bd\u6837\u6bd4\u4f8b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># title\uff1a\u56fe\u7247\u6216\u6587\u4ef6\u7684\u4fdd\u5b58\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># clusterAlg\uff1a\u805a\u7c7b\u65b9\u5f0f c(&#34;hc&#34;,&#34;pam&#34;,&#34;km&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># distance: \u8ddd\u79bb\u8ba1\u7b97\u65b9\u5f0f c(&#34;pearson&#34;,&#34;spearman&#34;,&#34;euclidean&#34;,&#34;binay&#34;,&#34;maximum&#34;,&#34;canberra&#34;,&#34;minkowski&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># plot : \u662f\u5426\u7ed8\u56fe\uff0c\u4ee5\u53ca\u56fe\u5f62\u7c7b\u578b c(NULL, &#34;pdf&#34;, &#34;png&#34;, &#34;pngBMP&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># writeTable: \u662f\u5426\u4fdd\u5b58\u6587\u4ef6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># seed\uff1a\u968f\u673a\u79cd\u5b50<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>results = ConsensusClusterPlus(d,\n<\/span><\/span><span style=\"display:flex;\"><span>                               maxK=<span style=\"color:#ff0;font-weight:bold\">10<\/span>,      \n<\/span><\/span><span style=\"display:flex;\"><span>                               reps=<span style=\"color:#ff0;font-weight:bold\">1000<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               pItem=<span style=\"color:#ff0;font-weight:bold\">0.8<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               pFeature=<span style=\"color:#ff0;font-weight:bold\">1<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               title=<span style=\"color:#0ff;font-weight:bold\">&#34;.\/tmp\/&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               clusterAlg=<span style=\"color:#0ff;font-weight:bold\">&#34;hc&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               distance=<span style=\"color:#0ff;font-weight:bold\">&#34;pearson&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               plot=<span style=\"color:#0ff;font-weight:bold\">&#34;pdf&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               writeTable=<span style=\"color:#fff;font-weight:bold\">FALSE<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               seed=<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>R\u5bf9\u8c61\u7ed3\u679c\uff1alist\u683c\u5f0f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u67e5\u770b\u805a\u7c7b\u6570\u4e3a2\u7684\u7ed3\u679c\u4fe1\u606f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>names(results[[3]])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;consensusMatrix&#34; &#34;consensusTree&#34;   &#34;consensusClass&#34; &#34;ml&#34;    &#34;clrs&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>table(results[[3]]$consensusClass)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  1  2  3 <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 69 28 31 <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>dim(results[[3]]$consensusMatrix)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 128 128<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>results[[3]]$consensusMatrix[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#           [,1]      [,2]      [,3]      [,4]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1,] 1.0000000 0.3408360 0.7996870 0.3515249<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [2,] 0.3408360 1.0000000 0.1224806 1.0000000<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [3,] 0.7996870 0.1224806 1.0000000 0.1190108<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [4,] 0.3515249 1.0000000 0.1190108 1.0000000<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## consensus values 0 (never clustered together) <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## consensus values 1 (always clustered together)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u56fe\u5f62\u8f93\u51fa\u7ed3\u679c\uff0c\u4e3b\u8981\u4e24\u7c7b\u56fe<\/li>\n<\/ul>\n<p>\uff081\uff09\u7279\u5b9a\u805a\u7c7b\u7ed3\u679c\u7684\u70ed\u56fe<\/p>"},{"title":"\u4f7f\u7528IsoformSwitchAnalyzeR\u5305\u8fdb\u884c\u53ef\u53d8\u526a\u5207\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/070-isoformswitch\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/070-isoformswitch\/","description":"<ul>\n<li><a href=\"https:\/\/bioconductor.org\/packages\/release\/bioc\/html\/IsoformSwitchAnalyzeR.html\">https:\/\/bioconductor.org\/packages\/release\/bioc\/html\/IsoformSwitchAnalyzeR.html<\/a><\/li>\n<\/ul>\n<h1 id=\"1\u80cc\u666f\u77e5\u8bc6\">1\u3001\u80cc\u666f\u77e5\u8bc6<\/h1>\n<ul>\n<li>The usage of Alternative Transcription Start sites (aTSS\u53ef\u9009\u62e9\u8f6c\u5f55\u8d77\u59cb\u4f4d\u70b9), Alternative Splicing (AS\u53ef\u9009\u62e9\u526a\u5207\u4f4d\u70b9) and alternative Transcription Termination Sites (aTTS\u53ef\u9009\u62e9\u7ec8\u6b62\u4f4d\u70b9) are collectively collectively results in the production of <strong>different isoforms.<\/strong><\/li>\n<\/ul>\n<img src=\"https:\/\/www.researchgate.net\/publication\/327264306\/figure\/fig1\/AS:664597191204868@1535463726583\/A-Schematic-representation-of-a-mRNA-transcript-Isoforms-can-be-generated-by.png\" alt=\"A) Schematic representation of a mRNA transcript. Isoforms can be... |  Download Scientific Diagram\" style=\"zoom:50%;\" \/>\n<ul>\n<li>\n<p>Alternative isoforms are widely used as recently demonstrated by The ENCODE Consortium, which found that on average, <strong>6.3 different transcripts are generated per gene<\/strong>; a number which may vary considerably per gene.<\/p>"},{"title":"\u8bfa\u6a21\u56fe\u6216\u5217\u7ebf\u56fe\u7ed8\u5236\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/078-nomogram\/","pubDate":"Fri, 28 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/078-nomogram\/","description":"<blockquote>\n<p>\u80bf\u7624\u9884\u540e\u7c7b\u6587\u7ae0\u7684\u5e38\u89c4\u6b65\u9aa4\u4e4b\u4e00\u662f\u7ed8\u5236\u8bfa\u6a21\u56fe\uff0c\u5e76\u8fdb\u884c\u76f8\u5173\u5206\u6790\u3002\u4ee5\u4e0b\u603b\u7ed3\u4e86\u76f8\u5173\u57fa\u7840\u7ed8\u5236\u5de5\u5177\u3002<\/p><\/blockquote>\n<ul>\n<li>\u793a\u4f8b\u6570\u636e\u96c6<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(survival)\n<\/span><\/span><span style=\"display:flex;\"><span>head(lung)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   inst time status age sex ph.ecog ph.karno pat.karno meal.cal wt.loss<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1    3  306      2  74   1       1       90       100     1175      NA<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2    3  455      2  68   1       0       90        90     1225      15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3    3 1010      1  56   1       0       90        90       NA      15<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1rms\u5305\">1\u3001rms\u5305<\/h2>\n<ul>\n<li>\u53c2\u8003\u7528\u6cd5\uff1ahttps:\/\/atm.amegroups.com\/article\/view\/14736\/15089<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(rms)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># var.labels = c(age=&#34;Age in Years&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                lac=&#34;lactate&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                sex=&#34;Sex of the participant&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                shock=&#34;shock&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                y=&#34;outcome&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                Y=&#34;ordinal&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># label(data) = lapply(names(var.labels),<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                      function(x) label(data[,x]) = var.labels[x])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>mod.cox &lt;- cph(Surv(time,status) ~ ph.ecog+sex+age,lung, surv=<span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>ddist &lt;- datadist(lung)\n<\/span><\/span><span style=\"display:flex;\"><span>options(datadist=<span style=\"color:#0ff;font-weight:bold\">&#39;ddist&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>surv.cox &lt;- Survival(mod.cox)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5b9a\u4e49\u51fd\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>med &lt;- Quantile(mod.cox)\n<\/span><\/span><span style=\"display:flex;\"><span>surv &lt;- Survival(mod.cox)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>nom.cox &lt;- nomogram(mod.cox,\n<\/span><\/span><span style=\"display:flex;\"><span>                   <span style=\"color:#007f7f\"># \u6839\u636etotal point\u8fdb\u884c\u7279\u5b9a\u51fd\u6570\u8ba1\u7b97<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                   fun=list(<span style=\"color:#fff;font-weight:bold\">function<\/span>(x) surv.cox(<span style=\"color:#ff0;font-weight:bold\">365<\/span>, x),   <span style=\"color:#007f7f\"># \u4e00\u5e74\u751f\u5b58\u7387<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                            <span style=\"color:#fff;font-weight:bold\">function<\/span>(x) med(lp=x, q=<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>)),  <span style=\"color:#007f7f\"># \u4e2d\u4f4d\u751f\u5b58\u65f6\u95f4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                   funlabel=c(<span style=\"color:#0ff;font-weight:bold\">&#34;200-Day Sur. Prob.&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                              <span style=\"color:#0ff;font-weight:bold\">&#34;Median Survival Time&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                   lp=<span style=\"color:#fff;font-weight:bold\">F<\/span>, <span style=\"color:#007f7f\"># \u4e0d\u5c55\u793aLinear Predictor<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>                   conf.int=c(<span style=\"color:#ff0;font-weight:bold\">0.1<\/span>,<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>) <span style=\"color:#007f7f\"># \u4e24\u4e2a\u7f6e\u4fe1\u533a\u95f4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>plot(nom.cox,\n<\/span><\/span><span style=\"display:flex;\"><span>     col.conf=c(<span style=\"color:#0ff;font-weight:bold\">&#39;red&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;green&#39;<\/span>),     <span style=\"color:#007f7f\"># \u7f6e\u4fe1\u533a\u95f4\u7684\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     col.grid = c(<span style=\"color:#0ff;font-weight:bold\">&#34;grey30&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;grey&#34;<\/span>)  <span style=\"color:#007f7f\"># \u7f51\u683c\u7684\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     )\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># f = cph(Surv(time, status) ~ age + sex + ph.karno, data = lung,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         x = T, y = T, sur = T)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># pred_score = apply(lung, 1, function(x){<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   pred=Predict(f, age=x[&#34;age&#34;], sex=x[&#34;sex&#34;], ph.karno=x[&#34;ph.karno&#34;])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   return(pred$yhat)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># }) %&gt;% unlist()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># summary(pred_score)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230428113638766.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230428113638766.png\" alt=\"image-20230428113638766\" style=\"zoom: 67%;\" \/>\n<ul>\n<li>\n<p>\u6821\u51c6\u66f2\u7ebf<\/p>"},{"title":"UCSCXenaShiny\u5305\u80bf\u7624\u6570\u636e\u5206\u6790\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/079-ucscxenashiny\/","pubDate":"Fri, 12 May 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/079-ucscxenashiny\/","description":"<blockquote>\n<p>UCSCXenaShiny\u662f\u57fa\u4e8e\u96c6\u6210\u4e86\u591a\u79cd\u80bf\u7624\u6570\u636e\u5e93\u7684UCSCXena\u5e73\u53f0\uff0c\u8fdb\u884c\u6570\u636e\u4e0b\u8f7d\u3001\u5206\u6790\u3001\u53ef\u89c6\u5316\u7684Shiny\u5de5\u5177\uff08\u4ee5\u53ca\u540c\u540dR\u5305\uff09\uff0c\u7531\u4e0a\u6d77\u79d1\u6280\u5927\u5b66\u738b\u8bd7\u7fd4\u535a\u58eb\u7b49\u5171\u540c\u5f00\u53d1\uff1b\u4e8e2021\u5e746\u6708\u53d1\u8868\u4e8eBioinformatics\u3002\u4e0b\u9762\u4e3b\u8981\u5b66\u4e60\u5176R\u5305\u7684\u76f8\u5173\u51fd\u6570\uff0c\u4e86\u89e3\u5176\u6838\u5fc3\u529f\u80fd\u3002<\/p>"},{"title":"EnhancedVolcano\u5305\u7ed8\u5236\u706b\u5c71\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/080-enhancedvolcano\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/080-enhancedvolcano\/","description":"<blockquote>\n<p><code>EnhancedVolcano<\/code>\u5305\u53ef\u6839\u636e\u5dee\u5f02\u5206\u6790\u7ed3\u679c\uff0c\u57fa\u4e8eggplot2\u7ed8\u56fe\u7ed3\u6784\uff0c\u65b9\u4fbf\u5730\u7ed8\u5236\u7f8e\u89c2\u7684\u706b\u5c71\u56fe\uff0c\u4e0b\u9762\u6839\u636e\u81ea\u5df1\u7684\u7406\u89e3\u5c0f\u7ed3\u4e0b\u57fa\u672c\u7528\u6cd5\u3002<\/p><\/blockquote>\n<ul>\n<li>\u5b98\u65b9\u5168\u9762\u7684\u6559\u7a0b\uff1ahttps:\/\/github.com\/kevinblighe\/EnhancedVolcano<\/li>\n<\/ul>\n<h3 id=\"\u793a\u4f8b\u5dee\u5f02\u57fa\u56e0\u6570\u636e\">\u793a\u4f8b\u5dee\u5f02\u57fa\u56e0\u6570\u636e<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(airway)\n<\/span><\/span><span style=\"display:flex;\"><span>library(magrittr)\n<\/span><\/span><span style=\"display:flex;\"><span>data(<span style=\"color:#0ff;font-weight:bold\">&#39;airway&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>airway$dex %&lt;&gt;% relevel(<span style=\"color:#0ff;font-weight:bold\">&#39;untrt&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>ens &lt;- rownames(airway)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(org.Hs.eg.db)\n<\/span><\/span><span style=\"display:flex;\"><span>symbols &lt;- mapIds(org.Hs.eg.db, keys = ens,\n<\/span><\/span><span style=\"display:flex;\"><span>                  column = c(<span style=\"color:#0ff;font-weight:bold\">&#39;SYMBOL&#39;<\/span>), keytype = <span style=\"color:#0ff;font-weight:bold\">&#39;ENSEMBL&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>symbols &lt;- symbols[!is.na(symbols)]\n<\/span><\/span><span style=\"display:flex;\"><span>symbols &lt;- symbols[match(rownames(airway), names(symbols))]\n<\/span><\/span><span style=\"display:flex;\"><span>rownames(airway) &lt;- symbols\n<\/span><\/span><span style=\"display:flex;\"><span>keep &lt;- !is.na(rownames(airway))\n<\/span><\/span><span style=\"display:flex;\"><span>airway &lt;- airway[keep,]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(<span style=\"color:#0ff;font-weight:bold\">&#39;DESeq2&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>dds &lt;- DESeqDataSet(airway, design = ~ cell + dex)\n<\/span><\/span><span style=\"display:flex;\"><span>dds &lt;- DESeq(dds, betaPrior=<span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>res &lt;- results(dds,\n<\/span><\/span><span style=\"display:flex;\"><span>               contrast = c(<span style=\"color:#0ff;font-weight:bold\">&#39;dex&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;trt&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;untrt&#39;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>res &lt;- lfcShrink(dds,\n<\/span><\/span><span style=\"display:flex;\"><span>                 contrast = c(<span style=\"color:#0ff;font-weight:bold\">&#39;dex&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;trt&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;untrt&#39;<\/span>), res=res, type = <span style=\"color:#0ff;font-weight:bold\">&#39;normal&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>res &lt;- as.data.frame(res)\n<\/span><\/span><span style=\"display:flex;\"><span>head(res)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#             baseMean log2FoldChange      lfcSE       stat       pvalue         padj<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># TSPAN6   710.0931707    -0.37807189 0.09851236 -3.8404448 0.0001228116 0.0009522932<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># TNMD       0.0000000             NA         NA         NA           NA           NA<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># DPM1     521.2572396     0.19826365 0.10931684  1.8155169 0.0694445184 0.1910397405<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># SCYL3    237.6068046     0.03234467 0.13821470  0.2371917 0.8125081096 0.9118161375<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># C1orf112  58.0358739    -0.08835419 0.25056704 -0.3194810 0.7493618190 0.8773885438<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># FGR        0.3194343    -0.08459224 0.15186225 -0.3948862 0.6929268648           NA<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u5982\u4e0a\uff0c\u53ea\u8981\u5305\u542b\u5305\u542b<code>\u57fa\u56e0\u540d<\/code>\u3001<code>\u5dee\u5f02\u500d\u6570<\/code>\u3001<code>P\u503c<\/code>\u4e09\u90e8\u5206\u4fe1\u606f\u7684\u5dee\u5f02\u7ed3\u679c\u5c31\u53ef\u4ee5\u7528\u4e8e\u7ed8\u5236\u706b\u5c71\u56fe\u3002<\/p>"},{"title":"IOBR\u5305\u80bf\u7624signature\u6253\u5206\u4e0e\u514d\u75ab\u6d78\u6da6\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/081-iobr\/","pubDate":"Mon, 15 May 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/081-iobr\/","description":"<blockquote>\n<p>IOBR\u5305\u96c6signature\u6253\u5206\u4e0e\u514d\u75ab\u6d78\u6da6\u5206\u6790\u4e3a\u4e00\u4f53\u7684\u80bf\u7624\u6570\u636e\u5206\u6790\u5de5\u5177\uff0c\u7531\u5357\u65b9\u533b\u79d1\u5927\u5b66\u5357\u65b9\u533b\u9662\u5ed6\u65fa\u519b\u6559\u6388\uff0c\u66fe\u4e1c\u5f3a\u535a\u58eb\u7b49\u4eba\u4e8e2021\u5e747\u6708\u53d1\u8868\u4e8eFrontiers in Immunology\uff0c\u5f15\u7528\u6570\u4ee5\u8d85\u8fc7100\u4f59\u6b21\u3002\u73b0\u6839\u636e\u5176github\u6559\u7a0b\u5b66\u4e60\u5176\u90e8\u5206\u529f\u80fd\u7528\u6cd5\u3002<\/p>"},{"title":"BayesPrism\u5305\u6839\u636escRNAseq\u9884\u6d4bBulk\u7ec6\u80de\u7ec4\u6210","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/082-bayesprism\/","pubDate":"Sat, 03 Jun 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/082-bayesprism\/","description":"<blockquote>\n<p>BayesPrism\u662f\u7531\u7f8e\u56fd\u5eb7\u5948\u5c14\u5927\u5b66Tin Yi Chu\u7b49\u4eba\u5f00\u53d1\u7684R\u5305\u5de5\u5177\uff0c\u4e8e2022\u5e744\u6708\u53d1\u8868\u5728Nature Cancer\u3002\u7b80\u5355\u6765\u8bf4\uff0c\u8be5\u65b9\u6cd5\u4f7f\u7528\u5355\u7ec6\u80deRNA-seq\u4f5c\u4e3a\u5148\u9a8c\u4fe1\u606f\uff0c\u901a\u8fc7\u4f30\u8ba1\u6279\u91cf\u6837\u672c\u4e2d\u7ec6\u80de\u7c7b\u578b\u6bd4\u4f8b\u548c\u7ec6\u80de\u7c7b\u578b\u7279\u5f02\u6027\u57fa\u56e0\u8868\u8fbe\u7684\u8054\u5408\u540e\u9a8c\u5206\u5e03\u3002<strong>P(\u03b8,Z|X,\u03d5)<\/strong>\uff0c\u53c2\u6570\u6982\u5ff5\u5982\u4e0b<\/p>"},{"title":"R\u5305NMF\u975e\u8d1f\u77e9\u9635\u5206\u89e3","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/083-nmf\/","pubDate":"Sat, 17 Jun 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/083-nmf\/","description":"<blockquote>\n<p>\uff081\uff09NMF\u662f\u975e\u8d1f\u77e9\u9635\u5206\u89e3\uff08Non-negative Matrix Factorization\uff09\u7684\u7f29\u5199\u3002\u5b83\u662f\u5c06\u4e00\u4e2a\u975e\u8d1f\u6570\u636e\u77e9\u9635\u5206\u89e3\u4e3a\u4e24\u4e2a\u975e\u8d1f\u77e9\u9635\u7684\u4e58\u79ef\uff0c\u5176\u4e2d\u4e00\u4e2a\u77e9\u9635\u8868\u793a\u7279\u5f81\u7684\u57fa\u77e9\u9635\uff0c\u53e6\u4e00\u4e2a\u77e9\u9635\u8868\u793a\u6bcf\u4e2a\u6837\u672c\u5728\u8fd9\u4e9b\u7279\u5f81\u4e0a\u7684\u7cfb\u6570\u77e9\u9635\u3002\u8fd9\u6837\u7684\u5206\u89e3\u53ef\u4ee5\u5c06\u539f\u59cb\u6570\u636e\u8868\u793a\u4e3a\u4e00\u7ec4\u975e\u8d1f\u57fa\u5411\u91cf\u7684\u52a0\u6743\u7ec4\u5408\uff0c\u4ece\u800c\u5b9e\u73b0\u6570\u636e\u7684\u964d\u7ef4\u548c\u7279\u5f81\u63d0\u53d6\u3002<\/p>"},{"title":"UCSCXenaShiny V2\u7b80\u8981\u6559\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/084-ucscxenashiny-v2\/","pubDate":"Sat, 05 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/084-ucscxenashiny-v2\/","description":"<blockquote>\n<p>Github\u4ed3\u5e93\uff1ahttps:\/\/github.com\/openbiox\/UCSCXenaShiny<\/p>\n<p>Online App\uff1ahttps:\/\/shiny.zhoulab.ac.cn\/UCSCXenaShiny\/<\/p>"},{"title":"MAGeCK-VISPR\u8d28\u63a7\u5206\u6790CRISPR\u6d4b\u5e8f\u6570\u636e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/085-mageck-vispr\/","pubDate":"Sun, 27 Jul 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/085-mageck-vispr\/","description":"<p>\u53c2\u8003<\/p>\n<ul>\n<li><a href=\"https:\/\/bitbucket.org\/liulab\/mageck-vispr\">https:\/\/bitbucket.org\/liulab\/mageck-vispr<\/a><\/li>\n<li>MAGeCK-VISPR\uff1ahttps:\/\/doi.org\/10.1186%2Fs13059-015-0843-6<\/li>\n<\/ul>\n<h1 id=\"1-\u5b89\u88c5\u73af\u5883\">1. \u5b89\u88c5\u73af\u5883<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>conda create -n mageck-vispr  python=3.7\n<\/span><\/span><span style=\"display:flex;\"><span>conda activate mageck-vispr\n<\/span><\/span><span style=\"display:flex;\"><span>conda install -c bioconda -c conda-forge mageck-vispr\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><p>\u7ecf\u8fc7\u5b9e\u9645\u64cd\u4f5c\uff0c\u90e8\u5206\u6e90\u4ee3\u7801\u9700\u8981\u4fee\u6539<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR(0)--mlr3\u57fa\u672c\u6d41\u7a0b V2","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/099-mlr3-basics-v2\/","pubDate":"Tue, 18 Jun 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/099-mlr3-basics-v2\/","description":"<ul>\n<li><a href=\"https:\/\/mlr3book.mlr-org.com\/\">https:\/\/mlr3book.mlr-org.com<\/a><a href=\"https:\/\/mlr3book.mlr-org.com\/\">\/<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(mlr3verse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>tsks() <span style=\"color:#007f7f\">#\u9884\u7f6e\u6570\u636e\u4efb\u52a1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>lrns() <span style=\"color:#007f7f\">#\u673a\u5668\u5b66\u4e60\u7b97\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>msrs() <span style=\"color:#007f7f\">#\u6027\u80fd\u8bc4\u4ef7\u6307\u6807<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>as.data.table()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1-task-\u4efb\u52a1\">1. Task \u4efb\u52a1<\/h3>\n<ul>\n<li><a href=\"https:\/\/mlr3book.mlr-org.com\/chapters\/chapter2\/data_and_basic_modeling.html\">https:\/\/mlr3book.mlr-org.com\/chapters\/chapter2\/data_and_basic_modeling.html<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>tsk()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u9884\u7f6e\u6570\u636e\u4efb\u52a1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>as.data.table(tsk()) \n<\/span><\/span><span style=\"display:flex;\"><span>tsk(<span style=\"color:#0ff;font-weight:bold\">&#34;mtcars&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u81ea\u5b9a\u4e49\u4efb\u52a1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tsk_mtcars = as_task_regr(mtcars, target = <span style=\"color:#0ff;font-weight:bold\">&#34;mpg&#34;<\/span>, id = <span style=\"color:#0ff;font-weight:bold\">&#34;cars&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#target\u53c2\u6570\u6307\u5b9a\u6807\u7b7e\u5217\uff0cid\u53c2\u6570\uff08\u53ef\u9009\uff09\u8bbe\u7f6e\u4efb\u52a1\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>as_task_classif()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u652f\u6301\u5bf9\u4efb\u52a1\u5bf9\u8c61\u8fdb\u884c\u6570\u636e\u67e5\u770b\u3001\u4fee\u6539\u7b49\u64cd\u4f5c\uff0c\u4e0d\u4e00\u4e00\u5217\u4e3e\uff0c\u8be6\u89c1\u4e0a\u8ff0\u94fe\u63a5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6709\u4e24\u70b9\u9700\u8981\u91cd\u70b9\u8bf4\u660e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tsk_mtcars$row_ids <span style=\"color:#007f7f\">#\u4e0d\u7b49\u4e8e\u4e00\u822c\u7684\u884c\u5e8f\u53f7\u3002\u4e00\u65e6\u5b9a\u4e49\u4efb\u52a1\uff0crow_ids\u5c31\u786e\u5b9a\u4e0d\u53d8\u4e86\uff0c\u53ef\u4ee5\u7406\u89e3\u4e3arow name\u3002\u65b9\u4fbf\u540e\u7eed\u6570\u636e\u5206\u5272\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>tsk_mtcars_another = tsk_mtcars$clone() <span style=\"color:#007f7f\">#\u60f3\u8981\u72ec\u7acb\u7684\u590d\u5236\u4efb\u52a1\u65f6\uff0c\u9700\u8981\u4f7f\u7528clone()<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u5bf9\u4e8e\u5206\u7c7b\u4efb\u52a1\u57fa\u672c\u7c7b\u4f3c\u3002\u503c\u5f97\u6ce8\u610f\u7684\u662f\u5728\u4e8c\u5206\u7c7b\u95ee\u9898\u65f6\uff0c\u9700\u8981\u8fdb\u4e00\u6b65\u6307\u5b9a\u9633\u6027\u6807\u7b7e<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR(0)--mlr3\u57fa\u672c\u6d41\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/099-mlr3-basics\/","pubDate":"Sun, 26 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/099-mlr3-basics\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(mlr3verse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1task\u8bad\u7ec3\u6570\u636e\u4e0e\u76ee\u7684\">1\u3001Task\u8bad\u7ec3\u6570\u636e\u4e0e\u76ee\u7684<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u5206\u7c7b\u4efb\u52a1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>task_classif = as_task_classif(data, target = <span style=\"color:#0ff;font-weight:bold\">&#34;col_target&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6839\u636e\u9884\u6d4b\u7ed3\u679c\u53c8\u53ef\u5206\u4e3a\uff1atwoclass\u4e8c\u5206\u7c7b, multiclass\u591a\u5206\u7c7b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u56de\u5f52\u4efb\u52a1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>task_regr = as_task_regr(data, target = <span style=\"color:#0ff;font-weight:bold\">&#34;col_target&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>task$ncol\n<\/span><\/span><span style=\"display:flex;\"><span>task$nrow\n<\/span><\/span><span style=\"display:flex;\"><span>task$feature_names\n<\/span><\/span><span style=\"display:flex;\"><span>task$feature_types\n<\/span><\/span><span style=\"display:flex;\"><span>task$target_names\n<\/span><\/span><span style=\"display:flex;\"><span>task$task_type\n<\/span><\/span><span style=\"display:flex;\"><span>task$data()\n<\/span><\/span><span style=\"display:flex;\"><span>task$col_roles\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2learner-\u673a\u5668\u5b66\u4e60\u7b97\u6cd5\">2\u3001Learner \u673a\u5668\u5b66\u4e60\u7b97\u6cd5<\/h1>\n<ul>\n<li>\n<p><code>mlr3learners<\/code>\u5305\u63d0\u4f9b\u4e86\u57fa\u672c\u7684\u673a\u5668\u5b66\u4e60\u7b97\u6cd5\uff08\u5982\u4e0b\u56fe\uff09 <a href=\"https:\/\/github.com\/mlr-org\/mlr3learners\">https:\/\/github.com\/mlr-org\/mlr3learners<\/a><\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(1)--\u5206\u7c7b--KNN","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/100-mlr3-knn\/","pubDate":"Thu, 30 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/100-mlr3-knn\/","description":"<h1 id=\"knnk\u8fd1\u90bb\">KNN&ndash;K\u8fd1\u90bb<\/h1>\n<h3 id=\"1knn\u7684\u6b65\u9aa4\">1\u3001KNN\u7684\u6b65\u9aa4<\/h3>\n<ul>\n<li>\uff081\uff09\u8ba1\u7b97\u8f93\u5165\u6570\u636e\u4e0e\u8bad\u7ec3\u6570\u636e\u7684\u8ddd\u79bb\uff08\u4e00\u822c\u6b27\u51e0\u91cc\u5f97\u8ddd\u79bb\uff09\uff1b<\/li>\n<li>\uff082\uff09\u4ece\u8bad\u7ec3\u96c6\u4e2d\uff0c\u9009\u53d6\u8ddd\u79bb\u8f93\u5165\u6570\u636e\u70b9\u6700\u8fd1\u7684k\u4e2a\u6570\u636e\uff1b<\/li>\n<li>\uff083\uff09\u5bf9\u4e8e\u5206\u7c7b\u4efb\u52a1\u3010\u5e38\u89c1\u3011\uff0c\u53d6\u8fd9k\u4e2a\u8bad\u7ec3\u6570\u636e\u7c7b\u522b\u7684\u4f17\u6570\uff1b\u5bf9\u4e8e\u56de\u5f52\u4efb\u52a1\uff0c\u53d6\u8fd9k\u4e2a\u8bad\u7ec3\u6570\u636e\u503c\u7684\u5e73\u5747\u6570\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/s2.loli.net\/2022\/03\/31\/CxUbFDcshLmnIoi.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/CxUbFDcshLmnIoi.png\" alt=\"img\" style=\"zoom: 33%;\" \/>\n<h5 id=\"\u7279\u70b9\">\u7279\u70b9<\/h5>\n<ul>\n<li>\uff081\uff09\u5982\u4e0a\u6b65\u9aa4\uff0cKNN\u6ca1\u6709\u6a21\u578b\u8bad\u7ec3\u7684\u8fc7\u7a0b\u3002\u9700\u8981\u9884\u6d4b\u6570\u636e\u65f6\uff0c\u76f4\u63a5\u4e0e\u8bad\u7ec3\u6570\u636e\u96c6\u8fdb\u884c\u8ba1\u7b97\u5373\u53ef\u3002<\/li>\n<li>\uff082\uff09KNN\u7b97\u6cd5\u4e2d\u6700\u91cd\u8981\u7684\u8d85\u53c2\u6570\u5c31\u662fK\u7684\u9009\u62e9\uff0c\u4f1a\u5728\u4e0b\u9762\u5177\u4f53\u64cd\u4f5c\u4e2d\u4ecb\u7ecd\u3002<\/li>\n<li>\uff083\uff09\u56e0\u4e3a\u9700\u8981\u8ba1\u7b97\u8ddd\u79bb\uff0c\u6240\u4ee5\u9700\u8981\u8fdb\u884c\u6570\u503c\u53d8\u91cf\u6807\u51c6\u5316\uff0c\u4ee5\u53ca\u7c7b\u522b\u53d8\u91cf\u8f6c\u5316\uff08\u5982\u679c\u6709\u5206\u7c7b\u53d8\u91cf\u7684\u8bdd\uff09\u3002<\/li>\n<li>\uff084\uff09KNN\u5728\u6570\u636e\u91cf\u5c0f\u6216\u8005\u7ef4\u5ea6\u8f83\u5c0f\u7684\u60c5\u51b5\u4e0b\u6548\u679c\u5f88\u597d\uff0c\u4f46\u4e0d\u9002\u7528\u4e8e\u5927\u89c4\u6a21\u7684\u6570\u636e\uff08\u8ba1\u7b97\u91cf\u5927\uff09\u3002<\/li>\n<\/ul>\n<p>\u5173\u4e8e\u8ddd\u79bb\uff0c\u6b27\u51e0\u91cc\u5f97\u8ddd\u79bb\uff0c\u5f52\u4e00\u5316\uff08\u4e2d\u5fc3\u5316\uff09<\/p>"},{"title":"\u6b63\u5219\u8868\u8fbe\u5f0f\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/100-regex-basics\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/100-regex-basics\/","description":"<blockquote>\n<p>\u5728R\u3001shell\uff0cPython\u7b49\u8fdb\u884c\u5b57\u7b26\u4e32\u5904\u7406\u65f6\uff0c\u5e38\u5e38\u4f7f\u7528\u6b63\u5219\u8868\u8fbe\u5f0f\u8fdb\u884c\u9ad8\u6548\u7684\u6587\u672c\u7f16\u8f91\u3002\u4e0b\u9762\u5c0f\u7ed3\u4e00\u4e0b\u5173\u4e8e\u6b63\u5219\u8868\u8fbe\u5f0f\u7684\u57fa\u7840\u7528\u6cd5<\/p><\/blockquote>\n<h1 id=\"1\u5339\u914d\u5b57\u7b26\u96c6\">1\u3001\u5339\u914d\u5b57\u7b26\uff08\u96c6\uff09<\/h1>\n<p><code>.<\/code>  :  \u53ef\u4ee5\u5339\u914d\u9664\u6362\u884c\u7b26\u5916\u7684\u4efb\u610f\u5b57\u7b26<\/p>"},{"title":"\u6587\u732e--AD\u661f\u5f62\u80f6\u8d28\u4e0e\u5c0f\u80f6\u8d28\u7ec6\u80de\u7684\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/100-ad-astrocytes-microglia\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/100-ad-astrocytes-microglia\/","description":"<blockquote>\n<p>AD\u661f\u5f62\u80f6\u8d28\u7ec6\u80de\u4e0e\u5c0f\u80f6\u8d28\u7ec6\u80de\u7684snRNA-seq\u6570\u636e\u5206\u6790<\/p>\n<p>Diverse human astrocyte and microglial transcriptional responses to Alzheimer\u2019s pathology<\/p>\n<p>Acta Neuropathologica (2022) 143:75\u201391<\/p>\n<p>IF=17<\/p>\n<p><a href=\"https:\/\/doi.org\/10.1007\/s00401-021-02372-6\">https:\/\/doi.org\/10.1007\/s00401-021-02372-6<\/a><\/p><\/blockquote>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220414201022304.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220414201022304.png\" alt=\"\u6587\u7ae0\u5206\u6790\u601d\u8def\"  \/>\n<\/p>"},{"title":"hugo+github\u642d\u5efa\u6211\u7684\u4e2a\u4eba\u535a\u5ba2","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/101-hugo-blog\/","pubDate":"Sun, 29 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/101-hugo-blog\/","description":"<ul>\n<li>\u535a\u5ba2\u7f51\u9875\uff1ahttps:\/\/lishensuo.github.io\/<\/li>\n<li>github\uff1ahttps:\/\/github.com\/lishensuo\/lishensuo.github.io<\/li>\n<\/ul>\n<h1 id=\"1\u5b89\u88c5hugo\">1\u3001\u5b89\u88c5hugo<\/h1>\n<p>\uff081\uff09\u9996\u5148\u4e0b\u8f7d\u5b89\u88c5\u5305https:\/\/github.com\/gohugoio\/hugo\/releases<\/p>"},{"title":"\u6587\u732e--AD\u5c0f\u9f20\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/101-ad-spatial\/","pubDate":"Fri, 10 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/101-ad-spatial\/","description":"<blockquote>\n<p>Spatial Transcriptomics and In Situ Sequencing to Study Alzheimer&rsquo;s Disease<\/p>\n<p>Cell. 2020 Aug 20 | IF=41.5<\/p>\n<p>DOI: 10.1016\/j.cell.2020.06.038<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220610155820989.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220610155820989.png\" alt=\"image-20220610155820989\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(2)--\u5206\u7c7b--\u903b\u8f91\u56de\u5f52.md","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/101-mlr3-logistic\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/101-mlr3-logistic\/","description":"<h2 id=\"1\u903b\u8f91\u56de\u5f52\u7684\u7b97\u6cd5\u7406\u89e3\">1\u3001\u903b\u8f91\u56de\u5f52\u7684\u7b97\u6cd5\u7406\u89e3<\/h2>\n<ul>\n<li>\u903b\u8f91\u56de\u5f52 = \u7ebf\u6027\u56de\u5f52 + <strong>Sigmoid<\/strong>\u51fd\u6570<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/s2.loli.net\/2022\/04\/01\/WFdNuX6vo42BGY3.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/WFdNuX6vo42BGY3.png\" alt=\"img\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u6316\u6398AD\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790NK\u6d78\u6da6","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/102-ad-nk\/","pubDate":"Sun, 30 Oct 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/102-ad-nk\/","description":"<blockquote>\n<ul>\n<li>\n<p>Expression of Immune Related Genes and Possible Regulatory Mechanisms in Alzheimer\u2019s Disease<\/p>\n<\/li>\n<li>\n<p>doi: 10.3389\/fimmu.2021.768966<\/p>\n<\/li>\n<li>\n<p>05 November 2021<\/p>\n<\/li>\n<li>\n<p>\u6838\u5fc3\u7ed3\u8bba\uff1aAD\u75c5\u4eba\u5916\u5468\u8840\u4e2d\u7684NK\u7ec6\u80de\u6d78\u6da6\u5230\u5927\u8111\u4e2d\u53c2\u4e0eAD\u75c5\u7406\u8fc7\u7a0b\u7684\u514d\u75ab\u53cd\u5e94\u3002<\/p>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20221030104346017.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20221030104346017.png\" alt=\"image-20221030104346017\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(3)--\u5206\u7c7b--LDA\u4e0eQDA","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/102-mlr3-lda-qda\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/102-mlr3-lda-qda\/","description":"<h2 id=\"1\u6982\u8ff0\">1\u3001\u6982\u8ff0<\/h2>\n<ul>\n<li>\n<p>LDA\u4e0eQDA\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u4e3a<strong>\u6709\u76d1\u7763\u7684\u964d\u7ef4<\/strong>\uff0c\u5c06\u591a\u4e2a\u9884\u6d4b\u53d8\u91cf\u4fe1\u606f\u538b\u7f29\u6210\u5c11\u6570\uff08\u7c7b\u522b\u6570-1\uff09\u65b0\u7684\u9884\u6d4b\u53d8\u91cf\u3002<\/p>\n<\/li>\n<li>\n<p>\u6bcf\u4e00\u4e2a\u65b0\u7684\u9884\u6d4b\u53d8\u91cf\u79f0\u4e4b\u4e3a\u5224\u522b\u51fd\u6570\uff0c\u7531\u6240\u6709\u539f\u59cb\u53d8\u91cf\u7684\u7ebf\u6027\u7ec4\u5408\u3002<\/p>"},{"title":"\u6587\u732e--\u57fa\u4e8e\u809d\u7ec6\u80de\u764cM2\u6837\u80bf\u7624\u5de8\u566c\u7ec6\u80de\u5efa\u7acb\u9884\u540e\u6a21\u578b","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/103-hcc-macrophage\/","pubDate":"Sun, 13 Nov 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/103-hcc-macrophage\/","description":"<blockquote>\n<p>\u6587\u7ae0\u9898\u76ee\uff1aM2-like tumor-associated macrophage-related biomarkers to construct a novel prognostic signature, reveal the immune landscape, and screen drugs in hepatocellular carcinoma<\/p>\n<p>\u53d1\u8868\u671f\u520a\u53ca\u65e5\u671f\uff1aFront Immunol\uff0c 2022 Sep 13<\/p>\n<p>DOI\uff1a<a href=\"https:\/\/doi.org\/10.3389%2Ffimmu.2022.994019\">10.3389\/fimmu.2022.994019<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20221113200742170.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20221113200742170.png\" alt=\"image-20221113200742170\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(4)--\u5206\u7c7b--\u6734\u7d20\u8d1d\u53f6\u65af","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/103-mlr3-naive-bayes\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/103-mlr3-naive-bayes\/","description":"<h2 id=\"1\u6734\u7d20\u8d1d\u53f6\u65af\u7b80\u4ecb\">1\u3001\u6734\u7d20\u8d1d\u53f6\u65af\u7b80\u4ecb<\/h2>\n<ul>\n<li>Naive Bayes\uff1a\u9884\u6d4b\u6837\u672c\u5c5e\u4e8e\u6bcf\u4e00\u7c7b\u522b\u7684\u6982\u7387\uff0c\u53d6\u6982\u7387\u6700\u9ad8\u7684\u7c7b\u522b\u3002\u5305\u542b\u56db\u4e2a\u6982\u5ff5\uff1a\u540e\u9a8c\u6982\u7387\u3001\u4f3c\u7136\u3001\u5148\u9a8c\u6982\u7387\u4ee5\u53ca\u5168\u6982\u7387\u3002\u5982\u4e0b\u56fe\u793a\u4f8b<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/s2.loli.net\/2022\/04\/06\/3JAyBg5qnEXjSso.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/3JAyBg5qnEXjSso.png\" alt=\"image-20220406104834011\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u690e\u95f4\u76d8\u9000\u884c\u6027\u75be\u75c5bulk\u4e0escRNA-seq\u6570\u636e\u6316\u6398","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/104-disc-degeneration\/","pubDate":"Thu, 01 Dec 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/104-disc-degeneration\/","description":"<blockquote>\n<p><strong>\u6587\u7ae0\u9898\u76ee<\/strong>\uff1aRevealing the Key MSCs Niches and Pathogenic Genes in Influencing CEP Homeostasis: A Conjoint Analysis of Single-Cell and WGCNA<\/p>\n<p><strong>\u6742\u5fd7\/\u65e5\u671f<\/strong>\uff1aFront. Immunol.  \/ 27 June 2022<\/p>\n<p><strong>DOI<\/strong>\uff1a10.3389\/fimmu.2022.933721<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(5)--\u5206\u7c7b--SVM","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/104-mlr3-svm\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/104-mlr3-svm\/","description":"<h2 id=\"1svm\u76f8\u5173\">1\u3001SVM\u76f8\u5173<\/h2>\n<h3 id=\"\u57fa\u672c\u6982\u5ff5\">\u57fa\u672c\u6982\u5ff5<\/h3>\n<ul>\n<li>\u8d85\u5e73\u9762\uff1a\u6bd4\u6570\u636e\u96c6\u7684\u53d8\u91cf\u5c11\u4e00\u4e2a\u7ef4\u5ea6\u7684\u5e73\u9762\uff0c\u4e5f\u79f0\u4e3a\u51b3\u7b56\u8fb9\u754c\uff1b<\/li>\n<li>\u95f4\u9694\uff1a\uff08\u5bf9\u4e8e\u786c\u95f4\u9694\uff09\u8bad\u7ec3\u6570\u636e\u4e2d\u6700\u63a5\u8fd1\u51b3\u7b56\u8fb9\u754c\u7684\u6837\u672c\u70b9\u4e0e\u51b3\u7b56\u8fb9\u754c\u4e4b\u95f4\u7684\u8ddd\u79bb\uff1b<\/li>\n<li>\u652f\u6301\u5411\u91cf\uff1a\uff08\u5bf9\u4e8e\u786c\u95f4\u9694\uff09\u63a5\u89e6\u95f4\u9694\u8fb9\u754c\u7684\u6570\u636e\u6837\u672c\uff0c\u5b83\u4eec\u662f\u652f\u6301\u8d85\u5e73\u9762\u7684\u4f4d\u7f6e\u3002\uff08\u5bf9\u4e8e\u8f6f\u95f4\u9694\uff09\u95f4\u9694\u5185\u7684\u6837\u672c\u70b9\u4e5f\u5c5e\u4e8e\u652f\u6301\u5411\u91cf\uff0c\u56e0\u4e3a\u79fb\u52a8\u5b83\u4eec\u4e5f\u4f1a\u6539\u53d8\u8d85\u5e73\u9762\u7684\u4f4d\u7f6e\u3002<\/li>\n<\/ul>\n<p>\u5982\u4e0b\u56fe\u6240\u793a\uff0cSVM\u7b97\u6cd5\u5c06\u5bfb\u627e\u4e00\u4e2a\u6700\u4f18\u7684\u7ebf\u6027\u8d85\u5e73\u9762\u8fdb\u884c\u5206\u7c7b\u3002<\/p>"},{"title":"\u6587\u732e--\u5c0f\u9f20\u7f3a\u8840\u6027\u4e2d\u98ce\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/105-stroke-sc\/","pubDate":"Sun, 11 Dec 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/105-stroke-sc\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aSingle-cell RNA-seq reveals the transcriptional landscape in ischemic stroke<\/p>\n<p><strong>\u671f\u520a\/\u65e5\u671f<\/strong>\uff1aournal of Cerebral Blood Flow &amp; Metabolism \/ 24 May 2021<\/p>\n<p><strong>DOI<\/strong>\uff1a10.1177\/0271678X211026770<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(6)--\u5206\u7c7b--\u51b3\u7b56\u6811\u4e0e\u968f\u673a\u68ee\u6797","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/105-mlr3-tree\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/105-mlr3-tree\/","description":"<h2 id=\"1\u51b3\u7b56\u6811\u57fa\u7840\">1\u3001\u51b3\u7b56\u6811\u57fa\u7840<\/h2>\n<h3 id=\"11-\u51b3\u7b56\u6811\u7684\u6784\u6210\">1.1 \u51b3\u7b56\u6811\u7684\u6784\u6210<\/h3>\n<p>\uff081\uff09\u51b3\u7b56\u6811\u7531\u8282\u70b9\u7ec4\u6210\uff0c\u53ef\u5206\u4e3a\u51b3\u7b56\u8282\u70b9(Decision tree)\u4e0e\u53f6\u8282\u70b9(leaf node)\u3002<\/p>\n<p>\uff082\uff09\u4ece\u4e0a\u5230\u4e0b\u7684\u7b2c\u4e00\u4e2a\u8282\u70b9\u4e5f\u79f0\u4e3a\u6839\u8282\u70b9(Root Node)\u3002\u6839\u8282\u70b9\u5230\u53f6\u8282\u70b9\u7684\u6700\u957f\u8ddd\u79bb\u79f0\u4e3a\u6811\u7684\u6df1\u5ea6\u3002<\/p>"},{"title":"\u6587\u732e--WGCNA\u53d1\u73b0\u7684\u5375\u5de2\u764c\u80bf\u7624\u76f8\u5173\u6210\u7ea4\u7ef4\u7ec6\u80de\u7684\u9884\u540e\u6a21\u578b","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/106-ovarian-caf\/","pubDate":"Sun, 18 Dec 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/106-ovarian-caf\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong> \uff1a Integrative Analysis From Multicenter Studies Identifies a WGCNA-Derived Cancer-Associated Fibroblast Signature for Ovarian Cancer<\/p>\n<p><strong>\u671f\u520a | \u65e5\u671f<\/strong> \uff1a <a href=\"https:\/\/doi.org\/10.3389\/fimmu.2022.951582\">https:\/\/doi.org\/10.3389\/fimmu.2022.951582<\/a> <strong>|<\/strong>  06 June 2022<\/p>\n<p><strong>\u6982\u8ff0<\/strong>\uff1a\u53d1\u73b06\u4e2a\u57fa\u56e0\uff08COL16A1, COL5A2, GREM1, LUM, SRPX, TIMP3\uff09\u7ec4\u6210\u7684\u5375\u5de2\u764c\u80bf\u7624\u76f8\u5173\u6210\u7ea4\u7ef4\u7ec6\u80de\u76f8\u5173\u7684signature<\/p>"},{"title":"\u6587\u732e--\u5c0f\u9f20\u524d\u5217\u817a\u764c\u5355\u7ec6\u80de\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/107-prostate-cancer\/","pubDate":"Tue, 10 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/107-prostate-cancer\/","description":"<blockquote>\n<p>\u9898\u76ee\uff1aDefining cellular population dynamics at single-cell resolution during prostate cancer progression<\/p>\n<p>\u671f\u520a | \u65e5\u671f \uff1aeLife | November 2022<\/p>\n<p>DOI\uff1ahttps:\/\/doi.org\/10.7554\/eLife.79076<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(8)--\u56de\u5f52--\u7ebf\u6027\u56de\u5f52","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/107-mlr3-linear-regression\/","pubDate":"Fri, 22 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/107-mlr3-linear-regression\/","description":"<h2 id=\"1\u5173\u4e8e\u7ebf\u6027\u56de\u5f52\">1\u3001\u5173\u4e8e\u7ebf\u6027\u56de\u5f52<\/h2>\n<h3 id=\"11-\u516c\u5f0f\u7406\u89e3\">1.1 \u516c\u5f0f\u7406\u89e3<\/h3>\n<p>\u7531\u4e8e\u5b9e\u9645\u95ee\u9898\u5f88\u5c11\u9047\u5230\u5355\u53d8\u91cf\u7ebf\u6027\u56de\u5f52\uff0c\u6240\u4ee5\u66f4\u5e38\u89c1\u7684\u8868\u793a\u4e3a\u901a\u7528\u7ebf\u6027\u6a21\u578b\uff1a\n$$\ny = \\beta_0 + \\beta_1x_1 +  \\beta_2x_2 + &hellip;+\\beta_kx_k + \\epsilon\n$$\n\uff081\uff09<code>\u03b20<\/code>\u8868\u793a\u622a\u8ddd\uff0c\u5373\u6240\u6709\u9884\u6d4b\u53d8\u91cf\u53d60\u65f6\u7684\u503c\uff1b<\/p>"},{"title":"\u6587\u732e--hECA\u4eba\u7c7b\u5355\u7ec6\u80de\u8868\u8fbe\u56fe\u8c31\u5e73\u53f0","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/108-heca\/","pubDate":"Thu, 19 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/108-heca\/","description":"<blockquote>\n<p>\u9898\u76ee\uff1ahECA: The cell-centric assembly of a cell atlas<\/p>\n<p>\u671f\u520a | \u65e5\u671f\uff1aiScience | May 20, 2022<\/p>\n<p>DOI\uff1ahttps:\/\/doi.org\/10.1016\/j.isci.2022.104318<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(9)--\u56de\u5f52--GAM\u975e\u7ebf\u6027\u56de\u5f52","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/108-mlr3-gam\/","pubDate":"Wed, 27 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/108-mlr3-gam\/","description":"<h1 id=\"1\u5173\u4e8egam\u975e\u7ebf\u6027\u56de\u5f52\">1\u3001\u5173\u4e8eGAM\u975e\u7ebf\u6027\u56de\u5f52<\/h1>\n<h2 id=\"1-n\u9636\u591a\u9879\u5f0f\">(1) n\u9636\u591a\u9879\u5f0f<\/h2>\n<ul>\n<li>\n<p>\u5982\u524d\u6240\u8bf4\uff0c\u7ebf\u6027\u56de\u5f52\u7684\u5047\u8bbe\u662f\u6bcf\u4e2a\u9884\u6d4b\u53d8\u91cf\u4e0e\u8f93\u51fa\u53d8\u91cf\u4e4b\u95f4\u4e3a\u7ebf\u6027\u76f8\u5173\u3002\u5373\u7c7b\u4f3c <code>y = ax + b<\/code>\u3002<\/p>\n<\/li>\n<li>\n<p>\u5f53\u9884\u6d4b\u53d8\u91cf\u4e0e\u8f93\u51fa\u53d8\u91cf\u4e4b\u95f4\u4e3a\u975e\u7ebf\u6027\u76f8\u5173\uff0c\u5373\u5448\u66f2\u7ebf\u7279\u5f81\u65f6\uff0c\u53ef\u5c1d\u8bd5\u4f7f\u7528\u9ad8\u9636\u591a\u9879\u5f0f\u8fdb\u884c\u62df\u5408\u3002\n$$\ny = \\beta_0 + \\beta_1x + \\beta_2x^2 + &hellip;+\\beta_nx^n +  \\varepsilon\n$$<\/p>"},{"title":"\u6587\u732e--immuCan\u80bf\u7624\u5fae\u73af\u5883\u5355\u7ec6\u80de\u6570\u636e\u5e93","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/109-immucan\/","pubDate":"Thu, 02 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/109-immucan\/","description":"<blockquote>\n<p>\u9898\u76ee\uff1aMeta-Analysis of Human Cancer Single-Cell RNA-Seq Datasets Using the IMMUcan Database<\/p>\n<p>\u671f\u520a\/\u65f6\u95f4\uff1aCancer Research \/ February 1, 2023<\/p>\n<p>DOI\uff1a<a href=\"https:\/\/doi.org\/10.1158\/0008-5472.CAN-22-0074\">doi.org\/10.1158\/0008-5472.CAN-22-0074<\/a><\/p>\n<p>\u7b80\u4ecb\uff1a\u6765\u81ea\u6cd5\u56fd\u5df4\u9ece\u5723\u8def\u6613\u65af\u7814\u7a76\u6240\u7684\u7814\u7a76\u56e2\u961f\u5efa\u7acb\u4e86\u4e00\u4e2a\u7efc\u5408\u80bf\u7624\u5fae\u73af\u5883\u6570\u636e\u5e93\u5e73\u53f0(IMMUcan\uff0chttps:\/\/immucanscdb.vital-it.ch)\u3002\u8be5\u5e73\u53f0\u57fa\u4e8e\u5927\u91cf\u7684\u5355\u7ec6\u80de\u6570\u636e\u6536\u96c6\u4e0e\u6574\u5408\u5206\u6790\uff0c\u4e3a\u6316\u6398\u80bf\u7624\u514d\u75ab\u5fae\u73af\u5883\u5355\u7ec6\u80de\u7279\u70b9\u63d0\u4f9b\u4e86\u4fbf\u6377\u7684\u5de5\u5177\u3002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(10)--\u56de\u5f52--\u5cad\u56de\u5f52+LASSO\u56de\u5f52+\u5f39\u6027\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/109-mlr3-regularization\/","pubDate":"Sat, 07 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/109-mlr3-regularization\/","description":"<blockquote>\n<p>\u5728\u5efa\u7acb\u901a\u7528\u7ebf\u6027\u6a21\u578b\u65f6\uff0c\u5f53\u6a21\u578b\u53c2\u6570\u5373<strong>\u659c\u7387\u503c\u7edd\u5bf9\u503c<\/strong>\u8fc7\u5927\u65f6\uff0c\u5bb9\u6613\u5b58\u5728\u8fc7\u62df\u5408\u7684\u98ce\u9669\u3002\u53ef\u901a\u8fc7\u4e0b\u9762\u4ecb\u7ecd\u76843\u79cd<strong>\u6b63\u5219\u5316<\/strong>\u65b9\u6cd5\u5c06\u6bcf\u4e2a\u9884\u6d4b\u53d8\u91cf\u7684\u659c\u7387\u53c2\u6570\u7f29\u5c0f\u4e3a0\u6216\u8005\u63a5\u8fd10\u3002\n$$\ny = \\beta_0 + \\beta_1x_1 +  \\beta_2x_2 + &hellip;+\\beta_kx_k + \\epsilon\n$$<\/p>"},{"title":"\u6587\u732e--\u514b\u7f57\u6069\u80a0\u708e\u75be\u75c5\u7684\u5927\u578b\u5355\u7ec6\u80de\u56fe\u8c31","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/110-crohn-disease\/","pubDate":"Sun, 05 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/110-crohn-disease\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aThe landscape of immune dysregulation in Crohn\u2019s disease revealed through single-cell transcriptomic profiling in the ileum and colon<\/p>\n<p><strong>\u671f\u520a | \u65f6\u95f4<\/strong>\uff1aImmunity | January 30, 2023<\/p>\n<p>DOI\uff1ahttps:\/\/doi.org\/10.1016\/j.immuni.2023.01.002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(11)--\u56de\u5f52--kNN+\u968f\u673a\u68ee\u6797+XGBboost","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/110-mlr3-regression-ensemble\/","pubDate":"Sun, 08 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/110-mlr3-regression-ensemble\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(mlr3verse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"0\u793a\u4f8b\u6570\u636e\">0\u3001\u793a\u4f8b\u6570\u636e<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>data(Iowa, package = <span style=\"color:#0ff;font-weight:bold\">&#34;lasso2&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(Iowa)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Year Rain0 Temp1 Rain1 Temp2 Rain2 Temp3 Rain3 Temp4 Yield<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 1930 17.75  60.2  5.83  69.0  1.49  77.9  2.42  74.4  34.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 1931 14.76  57.5  3.83  75.0  2.72  77.2  3.30  72.6  32.9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 1932 27.99  62.3  5.17  72.0  3.12  75.8  7.10  72.2  43.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 1933 16.76  60.5  1.64  77.8  3.45  76.4  3.01  70.5  40.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5 1934 11.36  69.5  3.49  77.2  3.85  79.7  2.84  73.4  23.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 1935 22.71  55.0  7.00  65.9  3.35  79.4  2.42  73.6  38.4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u7b2c10\u5217\u4e3a\u5c0f\u9ea6\u7684\u4ea7\u91cf<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5176\u4f59\u5217\u4e3a\u5c0f\u9ea6\u751f\u957f\u4e0d\u540c\u9636\u6bb5\u7684\u5929\u6c14\u60c5\u51b5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>task_regr = as_task_regr(Iowa, target = <span style=\"color:#0ff;font-weight:bold\">&#34;Yield&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1knn\">1\u3001KNN<\/h1>\n<ul>\n<li>\u57fa\u4e8eKNN\uff0c\u89e3\u51b3\u5206\u7c7b\u4efb\u52a1\u7684\u6b65\u9aa4\u4e4b\u524d\u5df2\u7ecf\u5b66\u4e60\u8fc7\uff0c\u53ef\u53c2\u8003\u4e4b\u524d\u7684\u5b66\u4e60\u7b14\u8bb0\uff1b<\/li>\n<li>\u800c\u7528KNN\u89e3\u51b3\u56de\u5f52\u95ee\u9898\u4e0e\u4e4b\u5341\u5206\u7c7b\u4f3c\uff0c\u53ea\u662f\u6700\u540e\u4e00\u6b65\u53d8\u4e3a\u53d6<strong>k\u7684\u6700\u8fd1\u6837\u672c\u7684\u5747\u503c<\/strong>\u3002(\u5728\u5206\u7c7b\u95ee\u9898\u4e2d\u662f\u53d6\u4f17\u6570)<\/li>\n<\/ul>\n<h2 id=\"11-\u786e\u5b9a\u5b66\u4e60\u65b9\u6cd5\">1.1 \u786e\u5b9a\u5b66\u4e60\u65b9\u6cd5<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u5b9a\u4e49\u5b66\u4e60\u5668<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>learner = lrn(<span style=\"color:#0ff;font-weight:bold\">&#34;regr.kknn&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>learner$param_set\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4e3b\u8981\u53c2\u6570\u4e3ak<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u9ed8\u8ba4scale\u4e3aTRUE\uff0c\u5373\u5bf9\u9884\u6d4b\u53d8\u91cf\u8fdb\u884c\u6807\u51c6\u5316<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) \u8d85\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>search_space = ps(\n<\/span><\/span><span style=\"display:flex;\"><span>  k = p_int(lower = <span style=\"color:#ff0;font-weight:bold\">3<\/span>, upper = <span style=\"color:#ff0;font-weight:bold\">15<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><span style=\"display:flex;\"><span>design = data.frame(k = <span style=\"color:#ff0;font-weight:bold\">3<\/span>:<span style=\"color:#ff0;font-weight:bold\">15<\/span>) %&gt;% as.data.table()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(3) \u4ea4\u53c9\u9a8c\u8bc1\u4e0e\u8bc4\u4ef7\u6307\u6807<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>resampling = rsmp(<span style=\"color:#0ff;font-weight:bold\">&#34;cv&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>measure = msr(<span style=\"color:#0ff;font-weight:bold\">&#34;regr.mse&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"12-\u9009\u51fa\u6700\u4f18\u8d85\u53c2\u6570\">1.2 \u9009\u51fa\u6700\u4f18\u8d85\u53c2\u6570<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>instance = TuningInstanceSingleCrit$new(\n<\/span><\/span><span style=\"display:flex;\"><span>  task = task_regr,\n<\/span><\/span><span style=\"display:flex;\"><span>  learner = learner,\n<\/span><\/span><span style=\"display:flex;\"><span>  resampling = resampling,\n<\/span><\/span><span style=\"display:flex;\"><span>  measure = measure,\n<\/span><\/span><span style=\"display:flex;\"><span>  terminator = trm(<span style=\"color:#0ff;font-weight:bold\">&#34;none&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>  search_space = search_space\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><span style=\"display:flex;\"><span>tuner = tnr(<span style=\"color:#0ff;font-weight:bold\">&#34;design_points&#34;<\/span>, design = design)  \n<\/span><\/span><span style=\"display:flex;\"><span>future::plan(<span style=\"color:#0ff;font-weight:bold\">&#34;multisession&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>tuner$optimize(instance)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u5386\u53f2\u8bb0\u5f55<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>as.data.table(instance$archive)[,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">2<\/span>] %&gt;% head()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#    k regr.mse<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1: 3 98.39484<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2: 4 95.16022<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3: 5 94.21570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4: 6 93.94832<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5: 7 93.65615<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6: 8 93.95614<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6700\u4f18\u8d85\u53c2\u6570\u7ed3\u679c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>instance$result_learner_param_vals \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#$k<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#[1] 7<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>instance$result_y\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># regr.mse <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 93.65615<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"13-\u8bad\u7ec3\u6700\u7ec8\u6a21\u578b\">1.3 \u8bad\u7ec3\u6700\u7ec8\u6a21\u578b<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>learner$param_set$values$k = instance$result_learner_param_vals$k\n<\/span><\/span><span style=\"display:flex;\"><span>learner$train(task_regr)\n<\/span><\/span><span style=\"display:flex;\"><span>learner$model\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2\u968f\u673a\u68ee\u6797\">2\u3001\u968f\u673a\u68ee\u6797<\/h1>\n<ul>\n<li>\n<p>\u7531\u8bb8\u591a\u51b3\u7b56\u6811\u7ec4\u6210\u7684\u968f\u673a\u68ee\u6797\u540c\u6837\u53ef\u4ee5\u7528\u4e8e\u89e3\u51b3\u56de\u5f52\u95ee\u9898\uff1b<\/p>"},{"title":"\u6587\u732e-\u6570\u636e\u6316\u6398-\u80be\u764c\u4e0e\u51dd\u8840\u76f8\u5173\u57fa\u56e0","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/111-kidney-coagulation\/","pubDate":"Sat, 01 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/111-kidney-coagulation\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>: Integrated analysis to identify the prognostic and immunotherapeutic roles of coagulation-associated gene signature in clear cell renal cell carcinoma<\/p>\n<p><strong>\u671f\u520a<\/strong> | <strong>\u65e5\u671f<\/strong>\uff1aFrontiers in Immunology | 17 March 2023<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.3389\/fimmu.2023.1107419<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(12)--\u964d\u7ef4--PCA","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/111-mlr3-pca\/","pubDate":"Thu, 12 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/111-mlr3-pca\/","description":"<blockquote>\n<p>\u964d\u7ef4\u662f\u6307\u5728\u4fdd\u7559\u5c3d\u53ef\u80fd\u591a\u539f\u59cb\u6570\u636e\u6761\u4ef6\u4e0b\uff0c\u5c06\u8bb8\u591a\u53d8\u91cf(\u6210\u767e\u4e0a\u5343)\u8f6c\u6362\u4e3a\u5c11\u6570\u7684\u3001\u4e0d\u76f8\u5173\u7684\u53d8\u91cf\uff0c\u4ece\u800c\u6709\u5229\u4e8e\u540e\u5e8f\u7684\u6570\u636e\u5206\u6790\u4e0e\u53ef\u89c6\u5316\u3002\u800c\u4e3b\u6210\u5206\u5206\u6790(PCA, Principal Component Analysis)\u662f\u6700\u5e38\u7528\u7684\u65e0\u76d1\u7763\u964d\u7ef4\u7b97\u6cd5\u3002<\/p>"},{"title":"\u6587\u732e-\u6570\u636e\u6316\u6398-\u80ba\u817a\u764c\u76f8\u5173\u57fa\u56e0\u5bf9","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/112-lung-adenocarcinoma\/","pubDate":"Sat, 01 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/112-lung-adenocarcinoma\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aBTG2 and SerpinB5, a novel gene pair to evaluate the prognosis of lung adenocarcinoma<\/p>\n<p><strong>\u671f\u520a  | \u65e5\u671f<\/strong>\uff1aFrontiers in Immunology | 17 March 2023<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.3389\/fimmu.2023.1098700<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(13)--\u964d\u7ef4t-SNE\u4e0eUMAP","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/112-mlr3-tsne-umap\/","pubDate":"Sat, 21 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/112-mlr3-tsne-umap\/","description":"<h1 id=\"\u7b97\u6cd5\u7b80\u4ecb\">\u7b97\u6cd5\u7b80\u4ecb<\/h1>\n<h2 id=\"t-sne\">t-SNE<\/h2>\n<p>\u6b63\u6001\u5206\u5e03\u5bc6\u5ea6\u51fd\u6570 \uff0c\u5176\u4e2d\u03c3\u8868\u793a\u6807\u51c6\u5dee\uff0c\u03bc\u8868\u793a\u5747\u503c<\/p>\n<p>\u7b2c\u4e00\u6b65\uff1a\u8ba1\u7b97\u9ad8\u7ef4\u7a7a\u95f4\u4e2d\u4efb\u610f\u4e24\u6837\u672c\u70b9\u7684\u6b27\u51e0\u91cc\u5f97\u8ddd\u79bb\u3002<\/p>\n<p>\u7b2c\u4e8c\u6b65\uff1a\u5bf9\u4e8e\u4efb\u4e00\u7279\u5b9a\u8282\u70b9\uff0c\u5c06\u5176\u4f59\u8282\u70b9\u4e0e\u4e4b\u7684\u8ddd\u79bb\u8f6c\u6362\u4e3a\u4ee5\u8be5\u8282\u70b9\u4e3a\u4e2d\u5fc3\u7684\u6b63\u6001\u5206\u5e03\u7684\u6982\u7387\u503c\u3002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(14)--\u805a\u7c7b-k\u5747\u503c","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/113-mlr3-kmeans\/","pubDate":"Wed, 06 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/113-mlr3-kmeans\/","description":"<h1 id=\"1\u7b97\u6cd5\u7b80\u4ecb\">1\u3001\u7b97\u6cd5\u7b80\u4ecb<\/h1>\n<h2 id=\"11-\u4e0d\u540c\u79cdk\u5747\u503c\u7b97\u6cd5\">1.1 \u4e0d\u540c\u79cdK\u5747\u503c\u7b97\u6cd5<\/h2>\n<p>k\u5747\u503c\u662f\u5e38\u7528\u7684\u805a\u7c7b\u7b97\u6cd5\u4e4b\u4e00\u3002<\/p>\n<p>\uff081\uff09\u9996\u5148\u9700\u8981\u9884\u5148\u5b9a\u4e49\u6837\u672c\u96c6\u4e2d\u5b58\u5728\u591a\u5c11\u79cd\u805a\u7c7b\uff08\u5047\u8bbe\u4e3ak\uff09\uff0c\u5373\u6570\u636e\u96c6\u4e2d\u5904\u5728K\u4e2a\u771f\u6b63\u610f\u4e49\u4e0a\u7684\u8d28\u5fc3\u3002<\/p>\n<p>\uff082\uff09\u7136\u540e\u968f\u673a\u521d\u59cb\u5316k\u4e2a\u8d28\u5fc3\uff0c\u6bcf\u4e2a\u8d28\u5fc3\u5177\u6709\u4e0e\u6837\u672c\u6570\u636e\u76f8\u540c\u7ef4\u5ea6\u7684\u53d8\u91cf\u503c\u3002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(15)--\u805a\u7c7b-\u5c42\u6b21\u805a\u7c7b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/114-mlr3-hierarchical\/","pubDate":"Sat, 18 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/114-mlr3-hierarchical\/","description":"<h1 id=\"1\u5c42\u6b21\u805a\u7c7b\u7b80\u4ecb\">1\u3001\u5c42\u6b21\u805a\u7c7b\u7b80\u4ecb<\/h1>\n<h2 id=\"11-\u8ba1\u7b97\u6b65\u9aa4\">1.1 \u8ba1\u7b97\u6b65\u9aa4<\/h2>\n<p>\u5c42\u6b21\u805a\u7c7bhierarchical clustering\u5e38\u7528\u7684\u662f\u81ea\u4e0b\u800c\u4e0a\u7684\u805a\u5408\u6cd5(Agglomerative)\u3002\u4e0e\u4e4b\u76f8\u5bf9\u7684\u662f\u81ea\u9876\u800c\u4e0b\u7684\u5206\u88c2\u6cd5(Division)\u3002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8eR\u5305mlr3(16)--\u805a\u7c7b-EM\u6df7\u5408\u5206\u5e03","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/115-mlr3-em\/","pubDate":"Sat, 18 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/115-mlr3-em\/","description":"<h1 id=\"1\u7b97\u6cd5\u4e0e\u5de5\u5177\u7b80\u4ecb\">1\u3001\u7b97\u6cd5\u4e0e\u5de5\u5177\u7b80\u4ecb<\/h1>\n<h2 id=\"11-em\u7b97\u6cd5\">1.1 EM\u7b97\u6cd5<\/h2>\n<p>EM\uff0c Expectation-Maximization \u671f\u671b\u6700\u5927\u5316\u7b97\u6cd5<\/p>\n<p>\u6df7\u5408\u5206\u5e03\uff1a\u6765\u81ea\u4e24\u79cd\u6216\u4e24\u79cd\u4ee5\u4e0a\u6982\u7387\u5206\u5e03(\u9ad8\u65af\u5206\u5e03\u6700\u5178\u578b)\u7684\u968f\u673a\u6570\u636e\u7ec4\u6210\u7684\u4e00\u7ec4\u6df7\u5408\u6570\u636e\u6240\u5f62\u6210\u7684\u5206\u5e03\u3002<\/p>\n<p>\u6df7\u5408\u6a21\u578b\u805a\u7c7b\uff1a\u8bc6\u522b\u6df7\u5408\u5206\u5e03\u4e2d\uff0c\u6837\u672c\u7684\u539f\u59cb\u5206\u5e03\uff0c\u4ece\u800c\u8fdb\u884c\u805a\u7c7b(\u4e00\u79cd\u539f\u59cb\u5206\u5e03\u5bf9\u5e94\u4e00\u4e2a\u805a\u7c7b)\uff0c\u5c5e\u4e8e<strong>\u8f6f\u805a\u7c7b<\/strong>\u3002<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8esklearn(1)--sklearn\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/116-sklearn-basics\/","pubDate":"Tue, 23 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/116-sklearn-basics\/","description":"<h1 id=\"\u4e00\u6570\u636e\u9884\u5904\u7406\">\u4e00\u3001\u6570\u636e\u9884\u5904\u7406<\/h1>\n<h2 id=\"1-\u6570\u636e\u62c6\u5206\">1. \u6570\u636e\u62c6\u5206<\/h2>\n<ul>\n<li><code>sklearn.model_selection.train_test_split()<\/code><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.datasets <span style=\"color:#fff;font-weight:bold\">import<\/span> load_wine\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> train_test_split\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>wine = load_wine() <span style=\"color:#007f7f\"># \u5b57\u5178<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>feats = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>feats_name = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;feature_names&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>feats_df = pd.DataFrame(feats, columns=feats_name)\n<\/span><\/span><span style=\"display:flex;\"><span>targets = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;target&#34;<\/span>].reshape((-<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#train_test_split()\u7b2c\u4e00\u4e2a\u53c2\u6570\u662f\u4e00\u4e2a\u6570\u636e\u96c6\u6216\u8005\u591a\u4e2a\u6570\u636e\u96c6(\u884c\u6570\u76f8\u540c)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6570\u636e\u96c6\u7c7b\u578b\u53ef\u4ee5\u662fpandas\u8868\u683c\uff0cnumpy\u6570\u7ec4\uff0c\u751a\u81f3list\u5217\u8868<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X = train_test_split(feats_df, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t\t\t   test_size=<span style=\"color:#ff0;font-weight:bold\">0.2<\/span>, random_state=<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X.shape, test_X.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ((142, 13), (36, 13))<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X, train_y, test_y = train_test_split(feats_df, targets, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t\t\t\t\t\t\t\ttest_size=<span style=\"color:#ff0;font-weight:bold\">0.2<\/span>, random_state=<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X.shape, test_X.shape, train_y.shape, test_y.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (142, 13), (36, 13), (142, 1), (36, 1))<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u8bbe\u7f6estratify\u53c2\u6570\uff0c\u5bf9\u67d0\u4e00\u5206\u7c7b\u6587\u672c\u5217\u8fdb\u884c\u5206\u5c42\u62c6\u5206\u6570\u636e\u96c6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X, train_y, test_y = train_test_split(feats_df, targets, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t\t\t\t\t\t\t\ttest_size=<span style=\"color:#ff0;font-weight:bold\">0.2<\/span>, random_state=<span style=\"color:#ff0;font-weight:bold\">42<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t\t\t\t\t\t\t\tstratify =targets)\n<\/span><\/span><span style=\"display:flex;\"><span>pd.DataFrame(train_y).value_counts(normalize=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>pd.DataFrame(test_y).value_counts(normalize=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2-\u6570\u636e\u8f6c\u6362\">2. \u6570\u636e\u8f6c\u6362<\/h2>\n<p>fit&ndash;transform\u6d41\u7a0b\uff0c\u4e00\u822c\u8fd4\u56de\u6570\u7ec4<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8esklearn(2)--\u4ea4\u53c9\u9a8c\u8bc1\u4e0e\u8d85\u53c2\u6570\u4f18\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/117-sklearn-validation\/","pubDate":"Sun, 04 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/117-sklearn-validation\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.datasets <span style=\"color:#fff;font-weight:bold\">import<\/span> load_wine\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.preprocessing <span style=\"color:#fff;font-weight:bold\">import<\/span> StandardScaler\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> train_test_split\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.tree <span style=\"color:#fff;font-weight:bold\">import<\/span> DecisionTreeClassifier\n<\/span><\/span><span style=\"display:flex;\"><span>tree_classif = DecisionTreeClassifier()\n<\/span><\/span><span style=\"display:flex;\"><span>wine = load_wine() <span style=\"color:#007f7f\"># \u5b57\u5178<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>feats = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>feats_name = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;feature_names&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>feats_df = pd.DataFrame(feats, columns=feats_name)\n<\/span><\/span><span style=\"display:flex;\"><span>targets = wine[<span style=\"color:#0ff;font-weight:bold\">&#34;target&#34;<\/span>].reshape((-<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#feats_df.shape, targets.shape<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X, train_y, test_y = train_test_split(feats_df, targets, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t\t\t\t\t\t\t\ttest_size=<span style=\"color:#ff0;font-weight:bold\">0.2<\/span>, random_state=<span style=\"color:#ff0;font-weight:bold\">42<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X.shape, test_X.shape, train_y.shape, test_y.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ((142, 13), (36, 13), (142, 1), (36, 1))<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u4e00\u4ea4\u53c9\u9a8c\u8bc1\">\u4e00\u3001\u4ea4\u53c9\u9a8c\u8bc1<\/h1>\n<p><a href=\"https:\/\/scikit-learn.org\/stable\/modules\/cross_validation.html\">https:\/\/scikit-learn.org\/stable\/modules\/cross_validation.html<\/a><\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8esklearn(3)--\u5e38\u89c1\u5206\u7c7b\u4efb\u52a1\u5b66\u4e60\u5668","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/118-sklearn-classifiers\/","pubDate":"Sun, 04 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/118-sklearn-classifiers\/","description":"<blockquote>\n<p>\u76ee\u7684\uff1a\u6f14\u793a\u5e38\u89c1\u51e0\u79cd\u5206\u7c7b\u5668\u7684\u4f7f\u7528\u65b9\u6cd5\uff0c\u5bf9\u5176\u8d85\u53c2\u6570\u8c03\u4f18\u5019\u9009\u8d85\u53c2\u6570\u7684\u9009\u62e9<\/p><\/blockquote>\n<h1 id=\"0\u793a\u4f8b\u6570\u636e\">0\u3001\u793a\u4f8b\u6570\u636e<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn <span style=\"color:#fff;font-weight:bold\">import<\/span> datasets\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> train_test_split\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.preprocessing <span style=\"color:#fff;font-weight:bold\">import<\/span> StandardScaler\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> cross_val_score\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> GridSearchCV\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>iris = datasets.load_iris()\n<\/span><\/span><span style=\"display:flex;\"><span>iris_X, iris_y = iris.data, iris.target\n<\/span><\/span><span style=\"display:flex;\"><span>iris_X = StandardScaler().fit_transform(iris_X)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X, train_y, test_y = train_test_split(iris_X, iris_y, test_size=<span style=\"color:#ff0;font-weight:bold\">0.3<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X.shape, test_X.shape, train_y.shape, test_y.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ((105, 4), (45, 4), (105,), (45,))<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1k\u8fd1\u90bb\">1\u3001K\u8fd1\u90bb<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.neighbors <span style=\"color:#fff;font-weight:bold\">import<\/span> KNeighborsClassifier\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_knn = KNeighborsClassifier()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = {<span style=\"color:#0ff;font-weight:bold\">&#34;n_neighbors&#34;<\/span>: [<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">7<\/span>, <span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">20<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>              <span style=\"color:#0ff;font-weight:bold\">&#34;p&#34;<\/span>: [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>              <span style=\"color:#0ff;font-weight:bold\">&#34;weights&#34;<\/span>: [<span style=\"color:#0ff;font-weight:bold\">&#34;uniform&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;distance&#34;<\/span>]}\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_knn, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=-<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)    \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>knn_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;n_neighbors&#39;: 10, &#39;p&#39;: 2, &#39;weights&#39;: &#39;uniform&#39;}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.9714285714285715<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2\u903b\u8f91\u56de\u5f52\">2\u3001\u903b\u8f91\u56de\u5f52<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.linear_model <span style=\"color:#fff;font-weight:bold\">import<\/span> LogisticRegression\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_logistic = LogisticRegression()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;penalty&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;l1&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;l2&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;elasticnet&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;none&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#39;C&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#39;solver&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;lbfgs&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;newton-cg&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;liblinear&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;sag&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;saga&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#39;max_iter&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">1000<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_logistic, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)          \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>logistic_grid_search = grid_search \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;C&#39;: 10, &#39;max_iter&#39;: 1000, &#39;penalty&#39;: &#39;l1&#39;, &#39;solver&#39;: &#39;saga&#39;}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.980952380952381<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3\u8d1d\u53f6\u65af\u7b97\u6cd5\">3\u3001\u8d1d\u53f6\u65af\u7b97\u6cd5<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.naive_bayes <span style=\"color:#fff;font-weight:bold\">import<\/span> GaussianNB\n<\/span><\/span><span style=\"display:flex;\"><span>model_bayes = GaussianNB()\n<\/span><\/span><span style=\"display:flex;\"><span>scores = cross_val_score(model_bayes, train_X, train_y, scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, cv=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(scores.mean())\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.96<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>bayes_cv = scores\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"4\u652f\u6301\u5411\u91cf\u673a\">4\u3001\u652f\u6301\u5411\u91cf\u673a<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.svm <span style=\"color:#fff;font-weight:bold\">import<\/span> SVC\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_svm = SVC()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;C&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;kernel&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;linear&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;poly&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;rbf&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;sigmoid&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;gamma&#39;<\/span>  : [<span style=\"color:#0ff;font-weight:bold\">&#39;scale&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;auto&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_svm, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)      \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>svm_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;C&#39;: 100, &#39;gamma&#39;: &#39;scale&#39;, &#39;kernel&#39;: &#39;linear&#39;}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.980952380952381<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"5\u968f\u673a\u68ee\u6797\">5\u3001\u968f\u673a\u68ee\u6797<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.ensemble <span style=\"color:#fff;font-weight:bold\">import<\/span> RandomForestClassifier\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_rf = RandomForestClassifier()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">100<\/span>, <span style=\"color:#ff0;font-weight:bold\">200<\/span>, <span style=\"color:#ff0;font-weight:bold\">300<\/span>, <span style=\"color:#ff0;font-weight:bold\">500<\/span>, <span style=\"color:#ff0;font-weight:bold\">1000<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;criterion&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;gini&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;entropy&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;max_depth&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">8<\/span>, <span style=\"color:#ff0;font-weight:bold\">16<\/span>, <span style=\"color:#ff0;font-weight:bold\">32<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;max_features&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#34;sqrt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;log2&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_rf, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)   \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>rf_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;criterion&#39;: &#39;gini&#39;, &#39;max_depth&#39;: 8, &#39;max_features&#39;: &#39;sqrt&#39;, &#39;n_estimators&#39;: 500}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.9523809523809523<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"6\u68af\u5ea6\u589e\u52a0\u673a\">6\u3001\u68af\u5ea6\u589e\u52a0\u673a<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.ensemble <span style=\"color:#fff;font-weight:bold\">import<\/span> GradientBoostingClassifier\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_gbm = GradientBoostingClassifier()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;learning_rate&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.001<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">100<\/span>, <span style=\"color:#ff0;font-weight:bold\">200<\/span>, <span style=\"color:#ff0;font-weight:bold\">300<\/span>, <span style=\"color:#ff0;font-weight:bold\">500<\/span>, <span style=\"color:#ff0;font-weight:bold\">1000<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;subsample&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;criterion&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#34;friedman_mse&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;squared_error&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_gbm, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)      \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>gbm_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;colsample_bytree&#39;: 0.5, &#39;learning_rate&#39;: 0.01, &#39;n_estimators&#39;: 10, &#39;subsample&#39;: 0.5}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.9619047619047618<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"7xgboost\">7\u3001XGBoost<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> xgboost <span style=\"color:#fff;font-weight:bold\">import<\/span> XGBClassifier\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model_xgb = XGBClassifier()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">10<\/span>,  <span style=\"color:#ff0;font-weight:bold\">30<\/span>, <span style=\"color:#ff0;font-weight:bold\">50<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;learning_rate&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;subsample&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;colsample_bytree&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_xgb, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;accuracy&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)           \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>xgb_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;colsample_bytree&#39;: 1, &#39;learning_rate&#39;: 0.01, &#39;n_estimators&#39;: 10, &#39;subsample&#39;: 0.5}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 0.9619047619047618<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u7b80\u5355\u6bd4\u8f83\">\u7b80\u5355\u6bd4\u8f83<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>pd.DataFrame({\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;KNN&#34;<\/span> : knn_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;Logistic&#34;<\/span> : logistic_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;Bayes&#34;<\/span> : bayes_cv.mean(),\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;SVM&#34;<\/span> : svm_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;RF&#34;<\/span> : rf_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;GBM&#34;<\/span> : gbm_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;XGB&#34;<\/span> : xgb_grid_search.best_score_\n<\/span><\/span><span style=\"display:flex;\"><span>}, index=[<span style=\"color:#0ff;font-weight:bold\">&#34;score&#34;<\/span>]).T.plot.line()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220904170954206.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220904170954206.png\" alt=\"image-20220904170954206\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u57fa\u4e8esklearn(4)--\u5e38\u89c1\u56de\u5f52\u4efb\u52a1\u5b66\u4e60\u5668","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/119-sklearn-regressors\/","pubDate":"Sun, 04 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/119-sklearn-regressors\/","description":"<blockquote>\n<p>\u76ee\u7684\uff1a\u6f14\u793a\u5e38\u89c1\u51e0\u79cd\u56de\u5f52\u5668\u7684\u4f7f\u7528\u65b9\u6cd5\uff0c\u5bf9\u5176\u8d85\u53c2\u6570\u8c03\u4f18\u5019\u9009\u8d85\u53c2\u6570\u7684\u9009\u62e9<\/p><\/blockquote>\n<h1 id=\"0\u793a\u4f8b\u6570\u636e\">0\u3001\u793a\u4f8b\u6570\u636e<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn <span style=\"color:#fff;font-weight:bold\">import<\/span> datasets\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> train_test_split\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.preprocessing <span style=\"color:#fff;font-weight:bold\">import<\/span> StandardScaler\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> cross_val_score\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.model_selection <span style=\"color:#fff;font-weight:bold\">import<\/span> GridSearchCV\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>diabetes = datasets.load_diabetes()\n<\/span><\/span><span style=\"display:flex;\"><span>diabetes_X, diabetes_y = diabetes.data, diabetes.target\n<\/span><\/span><span style=\"display:flex;\"><span>diabetes_X = StandardScaler().fit_transform(diabetes_X)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X, test_X, train_y, test_y = train_test_split(diabetes_X, diabetes_y, test_size=<span style=\"color:#ff0;font-weight:bold\">0.3<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_X.shape, test_X.shape, train_y.shape, test_y.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ((309, 10), (133, 10), (309,), (133,))<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1k\u8fd1\u90bb\">1\u3001K\u8fd1\u90bb<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.neighbors <span style=\"color:#fff;font-weight:bold\">import<\/span> KNeighborsRegressor\n<\/span><\/span><span style=\"display:flex;\"><span>model_knn = KNeighborsRegressor()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = {<span style=\"color:#0ff;font-weight:bold\">&#34;n_neighbors&#34;<\/span>: [<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">7<\/span>, <span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">20<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>              <span style=\"color:#0ff;font-weight:bold\">&#34;p&#34;<\/span>: [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>              <span style=\"color:#0ff;font-weight:bold\">&#34;weights&#34;<\/span>: [<span style=\"color:#0ff;font-weight:bold\">&#34;uniform&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;distance&#34;<\/span>]}\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_knn, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, n_jobs=-<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>knn_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;n_neighbors&#39;: 10, &#39;p&#39;: 2, &#39;weights&#39;: &#39;distance&#39;}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -58.18148180421127<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2\u7ebf\u6027\u56de\u5f52\">2\u3001\u7ebf\u6027\u56de\u5f52<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.linear_model <span style=\"color:#fff;font-weight:bold\">import<\/span> LinearRegression\n<\/span><\/span><span style=\"display:flex;\"><span>model_linear = LinearRegression()\n<\/span><\/span><span style=\"display:flex;\"><span>scores = cross_val_score(model_linear, train_X, train_y, \n<\/span><\/span><span style=\"display:flex;\"><span>\t\t\t\t\t\t scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, cv=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(scores.mean())\n<\/span><\/span><span style=\"display:flex;\"><span>linear_cv = scores\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -56.297486183914245<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3\u652f\u6301\u5411\u91cf\u673a\">3\u3001\u652f\u6301\u5411\u91cf\u673a<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.svm <span style=\"color:#fff;font-weight:bold\">import<\/span> SVR\n<\/span><\/span><span style=\"display:flex;\"><span>model_svm = SVR()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;C&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;kernel&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;linear&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;poly&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;rbf&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;sigmoid&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;gamma&#39;<\/span>  : [<span style=\"color:#0ff;font-weight:bold\">&#39;scale&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;auto&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_svm, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)              \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>svm_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;C&#39;: 1, &#39;gamma&#39;: &#39;scale&#39;, &#39;kernel&#39;: &#39;linear&#39;}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -56.48299266830155<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"4\u968f\u673a\u68ee\u6797\">4\u3001\u968f\u673a\u68ee\u6797<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u968f\u673a\u68ee\u6797<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.ensemble <span style=\"color:#fff;font-weight:bold\">import<\/span> RandomForestRegressor\n<\/span><\/span><span style=\"display:flex;\"><span>model_rf = RandomForestRegressor()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">100<\/span>, <span style=\"color:#ff0;font-weight:bold\">200<\/span>, <span style=\"color:#ff0;font-weight:bold\">300<\/span>, <span style=\"color:#ff0;font-weight:bold\">500<\/span>, <span style=\"color:#ff0;font-weight:bold\">1000<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;criterion&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#34;squared_error&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;absolute_error&#34;<\/span>],  <span style=\"color:#007f7f\">#\u4e0e\u5206\u7c7b\u4efb\u52a1\u6709\u53d8\u5316<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;max_depth&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">8<\/span>, <span style=\"color:#ff0;font-weight:bold\">16<\/span>, <span style=\"color:#ff0;font-weight:bold\">32<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;max_features&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#34;sqrt&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;log2&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_rf, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)              \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>rf_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;criterion&#39;: &#39;squared_error&#39;, &#39;max_depth&#39;: 4, &#39;max_features&#39;: &#39;sqrt&#39;, &#39;n_estimators&#39;: 500}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -56.98892728898064<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"5\u68af\u5ea6\u589e\u52a0\u673a\">5\u3001\u68af\u5ea6\u589e\u52a0\u673a<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> sklearn.ensemble <span style=\"color:#fff;font-weight:bold\">import<\/span> GradientBoostingRegressor\n<\/span><\/span><span style=\"display:flex;\"><span>model_gbm = GradientBoostingRegressor()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;loss&#39;<\/span> : [<span style=\"color:#0ff;font-weight:bold\">&#39;squared_error&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;absolute_error&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;huber&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;quantile&#39;<\/span>], <span style=\"color:#007f7f\">#\u4e0e\u5206\u7c7b\u4efb\u52a1\u6709\u53d8\u5316<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;learning_rate&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.001<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">100<\/span>, <span style=\"color:#ff0;font-weight:bold\">200<\/span>, <span style=\"color:#ff0;font-weight:bold\">300<\/span>, <span style=\"color:#ff0;font-weight:bold\">500<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;subsample&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_gbm, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)              \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>gbm_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;learning_rate&#39;: 0.01, &#39;loss&#39;: &#39;absolute_error&#39;, &#39;n_estimators&#39;: 500, &#39;subsample&#39;: 0.5}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -57.07526918837941<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"6xgboost\">6\u3001XGBoost<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> xgboost <span style=\"color:#fff;font-weight:bold\">import<\/span> XGBRegressor\n<\/span><\/span><span style=\"display:flex;\"><span>model_xgb = XGBRegressor()\n<\/span><\/span><span style=\"display:flex;\"><span>param_grid = [    \n<\/span><\/span><span style=\"display:flex;\"><span>    {<span style=\"color:#0ff;font-weight:bold\">&#39;n_estimators&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">10<\/span>,  <span style=\"color:#ff0;font-weight:bold\">30<\/span>, <span style=\"color:#ff0;font-weight:bold\">50<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;learning_rate&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;subsample&#39;<\/span>  : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>     <span style=\"color:#0ff;font-weight:bold\">&#39;colsample_bytree&#39;<\/span> : [<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search = GridSearchCV(model_xgb, param_grid, cv=<span style=\"color:#ff0;font-weight:bold\">5<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                           scoring=<span style=\"color:#0ff;font-weight:bold\">&#34;neg_root_mean_squared_error&#34;<\/span>, n_jobs=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>grid_search.fit(train_X, train_y)              \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_params_)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(grid_search.best_score_)\n<\/span><\/span><span style=\"display:flex;\"><span>xgb_grid_search = grid_search\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;colsample_bytree&#39;: 0.5, &#39;learning_rate&#39;: 0.1, &#39;n_estimators&#39;: 50, &#39;subsample&#39;: 0.5}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -58.57262307535045<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u7b80\u5355\u6bd4\u8f83\">\u7b80\u5355\u6bd4\u8f83<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>pd.DataFrame({\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;KNN&#34;<\/span> : knn_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;Linear&#34;<\/span> : linear_cv.mean(),\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;SVM&#34;<\/span> : svm_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;RF&#34;<\/span> : rf_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;GBM&#34;<\/span> : gbm_grid_search.best_score_,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;XGB&#34;<\/span> : xgb_grid_search.best_score_\n<\/span><\/span><span style=\"display:flex;\"><span>}, index=[<span style=\"color:#0ff;font-weight:bold\">&#34;score&#34;<\/span>]).T.plot.line()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220904181725895.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220904181725895.png\" alt=\"image-20220904181725895\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u7efc\u5408\u591a\u79cd\u5206\u6790\u5efa\u7acbTNBC\u9884\u540e\u6a21\u578b","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/120-tnbc-prognosis\/","pubDate":"Fri, 06 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/120-tnbc-prognosis\/","description":"<blockquote>\n<p>A network approach reveals driver genes associated with survival of patients with triple-negative breast cancer<\/p>\n<p>April 19, 2021; IF=5.4<\/p>\n<p><a href=\"https:\/\/doi.org\/10.1016\/j.isci.2021.102451\">https:\/\/doi.org\/10.1016\/j.isci.2021.102451<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220505144346626.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220505144346626.png\" alt=\"image-20220505144346626\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60--\u81ea\u52a8\u673a\u5668\u5b66\u4e60\u5de5\u5177autogluon","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/130-autogluon\/","pubDate":"Sat, 17 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/130-autogluon\/","description":"<blockquote>\n<p>\u6700\u5148\u5728\u674e\u6c90\u5927\u795e\u5728B\u7ad9\u7684\u5206\u4eab\u4e2d\u4e86\u89e3\u5230autogluon\uff0c\u5b83\u662f\u4e00\u4e2a\u81ea\u52a8\u673a\u5668\u5b66\u4e60\u5de5\u5177\uff0c\u53ef\u7528\u4e8e\u6587\u672c\u56fe\u7247\u8bc6\u522b\u3001\u8868\u683c\u4efb\u52a1\u7b49\u3002\u636e\u8bf4\u6548\u679c\u975e\u5e38\u4e0d\u9519&ndash;\u53f7\u79f03\u884c\u4ee3\u7801\u6253\u8d2599%\u7684\u673a\u5668\u5b66\u4e60\u6a21\u578b\uff0c\u751a\u81f3\u8bf4\u6807\u5fd7\u7740\u624b\u52a8\u8c03\u53c2\u7684\u65f6\u4ee3\u5df2\u7ecf\u7ed3\u675f\u3002<\/p>"},{"title":"\u6570\u636e\u5e93--\u836f\u7269\u4e0e\u836f\u7269\u9776\u70b9TTD","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/150-ttd\/","pubDate":"Tue, 03 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/150-ttd\/","description":"<h2 id=\"1ttd\u6570\u636e\u5e93\u7b80\u4ecb\">1\u3001TTD\u6570\u636e\u5e93\u7b80\u4ecb<\/h2>\n<ul>\n<li>\u9996\u5148\u5173\u4e8e\u9776\u70b9\u7684\u751f\u7269\u5b66\u5b9a\u4e49\u662f\uff1a<\/li>\n<\/ul>\n<blockquote>\n<p><strong>\u751f\u7269\u5b66\u9776\u70b9<\/strong>\uff08\u82f1\u8a9e\uff1aBiological target\uff09\u662f\u6307\u4f4d\u4e8e\u751f\u7269\u4f53\u5185\uff0c\u80fd\u591f\u88ab\u5176\u4ed6\u7269\u8d28\uff08\u914d\u4f53\u3001\u836f\u7269\u7b49\uff09\u8bc6\u522b\u6216\u7ed3\u5408\u7684\u7ed3\u6784\u3002\u5e38\u89c1\u7684\u836f\u7269\u9776\u70b9\u5305\u62ec\u86cb\u767d\u8d28\u3001\u6838\u9178\u548c\u79bb\u5b50\u901a\u9053\u7b49\u3002&mdash;\u7ef4\u57fa\u767e\u79d1<\/p>"},{"title":"\u6587\u732e--\u56db\u9006\u6563\u4e0e\u975e\u9152\u7cbe\u6027\u8102\u80aa\u809d\u7f51\u836f\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/150-sini-nafld\/","pubDate":"Sun, 10 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/150-sini-nafld\/","description":"<blockquote>\n<ul>\n<li>\n<p>Network Pharmacology-Based Analysis on the Potential Biological Mechanisms of Sinisan Against Non-Alcoholic Fatty Liver Disease\uff08\u56db\u9006\u6563&ndash;\u975e\u9152\u7cbe\u6027\u8102\u80aa\u809d\uff09<\/p>\n<\/li>\n<li>\n<p>27 August 2021<\/p>\n<\/li>\n<li>\n<p>Front Pharmacol, IF=5.8<\/p>\n<\/li>\n<li>\n<p>DOI: <a href=\"https:\/\/doi.org\/10.3389\/fphar.2021.693701\">10.3389\/fphar.2021.693701<\/a><\/p>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220423122209873.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220423122209873.png\" alt=\"image-20220423122209873\" style=\"zoom:50%;\" \/>\n<ul>\n<li>\u5206\u6790\u601d\u8def<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220422154843335.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220422154843335.png\" alt=\"image-20220422154843335\" style=\"zoom: 67%;\" \/>\n<ul>\n<li>\u6587\u7ae0\u7684\u6d41\u7a0b\u56fe<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220422155113821.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220422155113821.png\" alt=\"image-20220422155113821\" style=\"zoom: 33%;\" \/>\n<h2 id=\"1\u6570\u636e\u6536\u96c6\">1\u3001\u6570\u636e\u6536\u96c6<\/h2>\n<h3 id=\"11-tcm\u6570\u636e\">1.1 TCM\u6570\u636e<\/h3>\n<ul>\n<li>\n<p>\u56db\u5473\u4e2d\u836f\uff1a\u67f4\u80e1\u3001\u767d\u828d\u3001\u67b3\u5b9e\u3001\u7518\u8349<\/p>"},{"title":"\u57fa\u4e8ePPI\u7f51\u7edc\u7684\u9776\u70b9\u7fa4\u8ddd\u79bb\u9884\u6d4b\u836f\u7269\u7ec4\u5408","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/151-ppi-drug\/","pubDate":"Fri, 29 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/151-ppi-drug\/","description":"<blockquote>\n<p>Network-based prediction of drug combinations<\/p>\n<p>Nature communication   2019 \/ 03  IF=15<\/p>\n<p><a href=\"https:\/\/doi.org\/10.1038\/s41467-019-09186-x\">https:\/\/doi.org\/10.1038\/s41467-019-09186-x<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220429151826294.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220429151826294.png\" alt=\"image-20220429151826294\" style=\"zoom: 50%;\" \/>\n<h1 id=\"\u6587\u7ae0\u4f7f\u7528\u6570\u636e\">\u6587\u7ae0\u4f7f\u7528\u6570\u636e<\/h1>\n<h2 id=\"1ppi\">1\u3001PPI<\/h2>\n<p>high-quality protein-protein interactions (PPIs)<\/p>"},{"title":"CMap\u6570\u636e\u5e93\u6574\u7406\u4e0e\u4f7f\u7528\u65b9\u6cd5","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/151-cmap\/","pubDate":"Thu, 21 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/151-cmap\/","description":"<blockquote>\n<p>Cmap LINCS\u8ba1\u5212\u91c7\u7528L1000\u6280\u672f\u8fdb\u884c\u5927\u89c4\u6a21\u7684\u7ec6\u80de\u7cfb\u5e72\u6270\u5b9e\u9a8c\u6d4b\u5e8f\uff0c\u5f97\u5230\u5dee\u5f02\u57fa\u56e0\u3002\u5177\u4f53\u53ef\u5206\u4e3aPhase-1\uff0cPhase-2\u4e24\u4e2a\u9636\u6bb5\u3002\u6570\u636e\u5df2\u6574\u7406\u3001\u4e0a\u4f20\u81f3\u963f\u91cc\u4e91\u76d8\u3002\u672c\u7247\u7b14\u8bb0\u6574\u7406\u4e0b\u6570\u636e\u7684\u64cd\u4f5c\u3001\u4f7f\u7528\u65b9\u6cd5\u3002<\/p>"},{"title":"\u77e9\u9635\u76f8\u4f3c\u6027\u8ba1\u7b97\u6837\u672c\u901a\u8def\u4e00\u81f4\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/152-pathway-consistency\/","pubDate":"Fri, 13 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/152-pathway-consistency\/","description":"<p>\u672c\u6b21\u7684\u4e24\u7bc7\u6587\u7ae0\u5c5e\u4e8e\u540c\u4e00\u56e2\u961f\uff0c\u7b2c\u4e00\u7bc7\u6587\u7ae0\u4fa7\u91cd\u63d0\u51fa\u8ba1\u7b97\u65b9\u6cd5\uff1b\u7b2c\u4e8c\u7bc7\u6587\u7ae0\u4fa7\u91cd\u4e8e\u5e94\u7528\u65b9\u6cd5\uff0c\u53d1\u73b0\u751f\u7269\u5b66\u89c4\u5f8b<\/p>\n<h1 id=\"paper1\u63d0\u51fa\u65b9\u6cd5\">Paper1\uff1a\u63d0\u51fa\u65b9\u6cd5<\/h1>\n<blockquote>\n<p><strong>SIGN: similarity identification in gene expression<\/strong><\/p>\n<p>Bioinformatics  2019 \/ 2  IF = 7<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220513150043152.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220513150043152.png\" alt=\"image-20220513150043152\"  \/>\n<\/p>"},{"title":"MsigDB\u57fa\u56e0\u96c6\u6570\u636e\u5e93","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/152-msigdb\/","pubDate":"Thu, 21 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/152-msigdb\/","description":"<blockquote>\n<p>\u5b98\u65b9\u4ecb\u7ecd\uff1ahttps:\/\/www.gsea-msigdb.org\/gsea\/msigdb\/<\/p>\n<p>\u4e0b\u8f7d\u754c\u9762\uff1ahttp:\/\/www.gsea-msigdb.org\/gsea\/downloads.jsp<\/p>"},{"title":"\u6587\u732e--\u4ece\u76f8\u5173\u6027\u7f51\u7edc\u4e2d\u9274\u5b9a\u8282\u70b9\u95f4\u7684\u76f4\u63a5\u8c03\u63a7\u5173\u7cfb","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/153-gene-regulation\/","pubDate":"Thu, 19 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/153-gene-regulation\/","description":"<h1 id=\"1\u7b97\u6cd5\u7b80\u4ecb\">1\u3001\u7b97\u6cd5\u7b80\u4ecb<\/h1>\n<h2 id=\"11-\u5173\u7cfb\u62c6\u89e3\">1.1 \u5173\u7cfb\u62c6\u89e3<\/h2>\n<p>\u901a\u8fc7\u8ba1\u7b97\u65b9\u6cd5( \u4f8b\u5982\u76f8\u5173\u6027Pearson correlation, \u4e92\u4fe1\u606fmutual information\u7b49)\u6784\u5efa\u7684\u76f8\u4e92\u5173\u7cfb\u7f51\u7edc\u4e2d\uff0c\u8282\u70b9\u4e24\u4e24\u4e4b\u95f4\u7684\u5173\u7cfb\u901a\u5e38\u5305\u62ec\u76f4\u63a5\u5173\u7cfb\u4e0e\u95f4\u63a5\u5173\u7cfb\u4e24\u90e8\u5206\uff0c\u5373\u5982\u4e0b\u56fe\u6240\u793a<code>Total = Direct + Indirect<\/code><\/p>"},{"title":"\u6587\u732e--\u57fa\u4e8e\u901a\u8def\u5bcc\u96c6\u7684\u836f\u7269\u91cd\u5b9a\u5411(\u4ee5AD\u836f\u7269\u4e3a\u4f8b)","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/154-drug-repurposing\/","pubDate":"Tue, 31 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/154-drug-repurposing\/","description":"<blockquote>\n<p>\uff081\uff09Computational Drug Repurposing for Alzheimer\u2019s Disease Using Risk Genes From GWAS and Single-Cell RNA Sequencing Studies<\/p>\n<p><a href=\"https:\/\/www.frontiersin.org\/articles\/10.3389\/fphar.2021.617537\/full\">https:\/\/www.frontiersin.org\/articles\/10.3389\/fphar.2021.617537\/full<\/a><\/p>\n<p><em>Front Pharmacol\uff0c 2021\/06\uff0c IF 5.81<\/em><\/p><\/blockquote>\n<blockquote>\n<p>\uff082\uff09gene2drug: a computational tool for pathway-based rational drug repositioning<\/p>"},{"title":"\u6587\u732e--\u57fa\u4e8e\u836f\u7269\u5e72\u6270\u8f6c\u5f55\u7ec4\u5efa\u7acb\u8ddd\u79bb\u7f51\u7edc\u7528\u4e8e\u836f\u7269\u91cd\u5b9a\u5411","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/155-drug-perturbation\/","pubDate":"Sat, 18 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/155-drug-perturbation\/","description":"<blockquote>\n<p>Discovery of drug mode of action and drug repositioning from transcriptional responses<\/p>\n<p>August 2, 2010 | PNAS | IF=11.2<\/p>\n<p>10.1073\/pnas.1000138107<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220618154451159.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220618154451159.png\" alt=\"image-20220618154451159\"  \/>\n<\/p>"},{"title":"\u6587\u732e--synergyfinder\u5305\u8ba1\u7b97\u534f\u540c\u8bc4\u4ef7\u6307\u6807","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/170-synergyfinder\/","pubDate":"Fri, 27 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/170-synergyfinder\/","description":"<blockquote>\n<p>DrugCombDB: a comprehensive database of drug combinations toward the discovery of combinatorial therapy<\/p>\n<p><em>Nucleic Acids Research  | 2020 | IF=17<\/em><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220527214321528.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220527214321528.png\" alt=\"image-20220527214321528\" style=\"zoom:50%;\" \/>\n<h1 id=\"1\u6570\u636e\u6536\u96c6\">1\u3001\u6570\u636e\u6536\u96c6<\/h1>\n<p>\uff081\uff09HTS(high-throughput screening)\u9ad8\u901a\u91cf\u7b5b\u9009\u6280\u672f\u53ef\u7528\u4e8e\u5feb\u901f\u6d4b\u5f97\u836f\u7269\u4f5c\u7528\u4e8e\u764c\u75c7\u7ec6\u80de\u7cfb\u7684\u4e0d\u540c\u5242\u91cf(dose concentrations)\u4e0b\u7684\u53cd\u5e94(Response)\u3002\u5176\u4e2d\uff0c\u53cd\u5e94(Response)\u7684\u6307\u6807\u5e38\u662f\u7ec6\u80de\u6d3b\u529b(cell viability)\u3002<\/p>"},{"title":"\u6587\u732e--32\u79cd\u4e73\u817a\u764c\u7ec6\u80de\u7cfb\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u56fe\u8c31","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/171-breast-cancer-lines\/","pubDate":"Wed, 06 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/171-breast-cancer-lines\/","description":"<blockquote>\n<p>A single-cell analysis of breast cancer cell lines to study tumour heterogeneity and drug response<\/p>\n<p>Nature Communications  |   31 March 2022<\/p>\n<p>DOI: <a href=\"https:\/\/doi.org\/10.1038\/s41467-022-29358-6\">https:\/\/doi.org\/10.1038\/s41467-022-29358-6<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220706151411925.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220706151411925.png\" alt=\"image-20220706151411925\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u4e73\u817a\u764c\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4\u56fe\u8c31","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/172-breast-spatial\/","pubDate":"Sat, 06 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/172-breast-spatial\/","description":"<blockquote>\n<p><strong>A single-cell and spatially resolved atlas of human breast cancers<\/strong><\/p>\n<p>NatGenet. 2021 September<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220806223653835.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20220806223653835.png\" alt=\"image-20220806223653835\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u809d\u764c\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/173-liver-spatial\/","pubDate":"Sat, 08 Oct 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/173-liver-spatial\/","description":"<blockquote>\n<p>Comprehensive analysis of spatial architecture in primary liver cancer<\/p>\n<p>Sci Adv. 2021 Dec 17<\/p>\n<p>Doi: 10.1126\/sciadv.abg3750.<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20221002154903204.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20221002154903204.png\" alt=\"image-20221002154903204\" style=\"zoom:50%;\" \/>\n>\n> \u7b80\u5355\u6458\u8981: \u8fd9\u662f\u4e00\u7bc7\u8d44\u6e90\u578b\u7684\u6587\u7ae0\uff0c\u5e94\u8be5\u662f\u7b2c\u4e00\u7bc7\u8f83\u5927\u89c4\u6a21\u7684\u809d\u764c\u7a7a\u95f4\u8f6c\u5f55\u7ec4\u6d4b\u5e8f\u6587\u732e\u3002\u57fa\u4e8eST\u7684\u6240\u5305\u542b\u7684\u7a7a\u95f4\u4fe1\u606f\uff0c\u672c\u6587\u8fdb\u884c\u591a\u79cd\u65b0\u9896\u7684\u5206\u6790\u601d\u8def\uff0c\u4f8b\u5982leading-edge section\u533a\u57df\u7684\u7279\u5f81\uff0c\u7a7a\u95f4\u76f8\u90bb\u7684\u7ec6\u80de\u901a\u8baf\u5206\u6790\uff0c\u80bf\u7624\u4e2d\u5fc3\u4e0e\u56db\u5468\u7684\u901a\u8def\u8868\u8fbe\u5dee\u5f02\u7b49\u3002\u6587\u7ae0\u5206\u6790\u7684\u89d2\u5ea6\u6d89\u53ca\u5f88\u591a\u65b9\u9762\uff0c\u4f46\u5177\u4f53\u6bcf\u4e2a\u89d2\u5ea6\u6765\u8bf4\u5927\u591a\u4ee5\u6570\u636e\u5206\u6790\u7ed3\u679c\u63cf\u8ff0\u4e3a\u4e3b\u3002\n<p>\u76f8\u5173\u7f29\u5199\uff1a<\/p>"},{"title":"\u6587\u732e--\u751f\u4fe1\u5957\u8def\u4e4b\u80bf\u7624\u9884\u540e","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/174-cancer-prognosis\/","pubDate":"Mon, 17 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/174-cancer-prognosis\/","description":"<h3 id=\"01ccrcc\u4e0e\u514d\u75ab\u6d78\u6da6\">\u301001\u3011ccRCC\u4e0e\u514d\u75ab\u6d78\u6da6<\/h3>\n<blockquote>\n<p><strong>\u6807\u9898<\/strong>\uff1aLandscape of immune cell infiltration in clear cell renal cell carcinoma to aid immunotherapy<\/p>\n<p><strong>\u671f\u520a<\/strong>|<strong>\u65e5\u671f<\/strong>\uff1aCancer Science | 13 March 2021<\/p><\/blockquote>\n<h4 id=\"1-\u7b2c\u4e00\u6b21\u5206\u4e9a\u7fa4\">1 \u7b2c\u4e00\u6b21\u5206\u4e9a\u7fa4<\/h4>\n<ul>\n<li>TCGA 525\u6837\u672c\uff08TPM\uff09<\/li>\n<li>29\u4e2a imunne signature\uff1a16 \u514d\u75ab\u7ec6\u80de\u4e0e13\u4e2a\u514d\u75ab\u76f8\u5173\u529f\u80fd<\/li>\n<li>\u4f7f\u7528ssGSEA\u65b9\u6cd5\u8ba1\u7b97\u6bcf\u4e2a\u6837\u672c\u7684signature score<\/li>\n<li>\u57fa\u4e8esignature score\uff0c\u4f7f\u7528ConsensuClusterPlus\u5305\u5206\u5f975\u4e2a\u4e9a\u7fa4\n<ul>\n<li>PCA\u53ef\u89c6\u5316\u8f6e\u5ed3<\/li>\n<li>PD-1\u4e0ePD-L1\u8868\u8fbe\u5dee\u5f02<\/li>\n<li>C1+C4\u4e0eC2+C3+C5\u95f4\u751f\u5b58\u5dee\u5f02<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230408161538233.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20230408161538233.png\" alt=\"image-20230408161538233\" style=\"zoom:67%;\" \/>\n<h4 id=\"2-\u7b2c\u4e8c\u6b21\u5206\u4e9a\u7fa4\">2 \u7b2c\u4e8c\u6b21\u5206\u4e9a\u7fa4<\/h4>\n<ul>\n<li>\u4e24\u5927\u7ec4\u4e4b\u95f4\uff08C1+C4\u4e0eC2+C3+C5\uff09\u8fdb\u884c\u5dee\u5f02\u5206\u6790\uff0c\u5f97\u5230658\u4e2a\u5dee\u5f02\u57fa\u56e0<\/li>\n<li>\u57fa\u4e8e\u4e0a\u8ff0\u5dee\u5f02\u57fa\u56e0\uff0c\u518d\u6b21\u4f7f\u7528ConsensuClusterPlus\u5305\u91cd\u65b0\u5206\u62103\u4e2a\u4e9a\u7fa4\n<ul>\n<li>PCA\u53ef\u89c6\u5316\u8f6e\u5ed3<\/li>\n<li>PD-1\u4e0ePD-L1\u8868\u8fbe\u5dee\u5f02<\/li>\n<li>\u4e09\u7ec4\u95f4\u751f\u5b58\u5206\u6790<\/li>\n<li>29\u79cdsignature score\u5728\u4e09\u7ec4\u95f4\u7684\u5206\u5e03\u5dee\u5f02<\/li>\n<li>immune score\u4e0estromal score\u5728\u4e09\u7ec4\u95f4\u7684\u5206\u5e03\u5dee\u5f02\uff08ESTIMATE\uff09<\/li>\n<\/ul>\n<\/li>\n<li>\u6839\u636e\u4e0e\u5206\u7ec4\u7684\u76f8\u5173\u6027\uff0c\u5c06\u4e0a\u8ff0\u5dee\u5f02\u57fa\u56e0\u5206\u6210signature A\/B\n<ul>\n<li>\u901a\u8def\u5bcc\u96c6\u5206\u6790<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230408162322248.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20230408162322248.png\" alt=\"image-20230408162322248\" style=\"zoom: 67%;\" \/>\n<h4 id=\"3-tii\u5206\u6570\u53ca\u884d\u751f\u5206\u6790\">3 TII\u5206\u6570\u53ca\u884d\u751f\u5206\u6790<\/h4>\n<ul>\n<li>\u5206\u522b\u8ba1\u7b97signatue A\/B\u7684\u7b2c\u4e00\u4e3b\u6210\u5206\u4e4b\u548c\uff0c\u7136\u540e\u76f8\u51cf\u4f5c\u4e3a\u6bcf\u4e2a\u6837\u672c\u7684TII score<\/li>\n<li>\u6839\u636esurvmier\u5305\u8ba1\u7b97\u6700\u4f73\u9608\u503c\u5212\u5206\u6210high\u4e0elow score\u4e24\u7ec4\uff0c\u5e76\u8fdb\u884c\u4e00\u7cfb\u5217\u540e\u7eed\u5206\u6790\uff1a<\/li>\n<\/ul>\n<p>\uff081\uff09\u751f\u5b58\u5206\u6790<\/p>"},{"title":"\u6587\u732e--ccRCC\u5355\u7ec6\u80de\u8f6c\u5f55\u7ec4","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/175-ccrcc\/","pubDate":"Mon, 17 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/175-ccrcc\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aSingle-cell analyses of renal cell cancers reveal insights into tumor microenvironment, cell of origin, and therapy response<\/p>\n<p><strong>\u671f\u520a<\/strong> | <strong>\u65e5\u671f<\/strong>\uff1aPNAS | May 5, 2021<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1073\/pnas.2103240118<\/p>"},{"title":"\u6587\u732e--\u9ad3\u9798\u8131\u5931\u4e0e\u518d\u751f\u6a21\u578b\u5c0f\u9f20snRNAseq\u6570\u636e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/176-demyelination\/","pubDate":"Mon, 17 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/176-demyelination\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aTranscriptomic atlas and interaction networks of brain cells in mouse CNS demyelination and remyelination<\/p>\n<p><strong>\u671f\u520a|\u65e5\u671f<\/strong>\uff1aCell Report | April 2023<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1016\/j.celrep.2023.112293<\/p>"},{"title":"\u6587\u732e--\u57fa\u4e8e\u6cdb\u764cscRNAseq\u7684T\u7ec6\u80de\u56fe\u8c31\u6574\u5408\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/177-pancancer-tcell\/","pubDate":"Sun, 18 Jun 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/177-pancancer-tcell\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aPan-cancer T cell atlas links a cellular stress response state to immunotherapy resistance<\/p>\n<p><strong>\u671f\u520a|\u65e5\u671f<\/strong>\uff1anature medicine | 26 April 2023<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1038\/s41591-023-02371-y<\/p>"},{"title":"\u6587\u732e--\u6d46\u7ec6\u80de(Plasma cells)\u5728\u8180\u80f1\u764c(Bladder cancer)\u4e2d\u7684\u9884\u540e\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/178-plasma-bladder\/","pubDate":"Fri, 23 Jun 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/178-plasma-bladder\/","description":"<blockquote>\n<ul>\n<li><strong>\u9898\u76ee<\/strong>\uff1aThe potential crosstalk between tumor and plasma cells and its association with clinical outcome and immunotherapy response in bladder cancer<\/li>\n<li><strong>\u671f\u520a|\u65e5\u671f<\/strong>\uff1aJournal of Translational Medicine | 03 May 2023<\/li>\n<li><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1186\/s12967-023-04151-1<\/li>\n<\/ul>\n<p>\u8fd9\u7bc7\u6587\u7ae0\u8ba8\u8bba\u4e86\u6d46\u7ec6\u80de\u5728\u8180\u80f1\u764c\u514d\u75ab\u5fae\u73af\u5883\u7684\u6240\u626e\u6f14\u7684\u4f5c\u7528\u3002\u76f8\u6bd4\u4e8e\u4f20\u7edf\u80bf\u7624\u9884\u540e\u7c7b\u6587\u7ae0\uff0c\u89c9\u5f97\u6709\u5982\u4e0b\u51e0\u65b9\u9762\u65b0\u610f\uff1a<\/p>"},{"title":"\u6587\u732e--\u673a\u5668\u5b66\u4e60\u6a21\u578b\u9884\u6d4b\u836f\u7269\u80be\u6bd2\u6027-1","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/200-nephrotoxicity-ml-1\/","pubDate":"Fri, 10 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/200-nephrotoxicity-ml-1\/","description":"<blockquote>\n<p><strong>\u9898\u76ee<\/strong>\uff1aIn Silico Prediction and Insights Into the Structural Basis of Drug Induced Nephrotoxicity<\/p>\n<p><strong>\u671f\u520a<\/strong> | \u65e5\u671f\uff1a05 January 2022<\/p>\n<p><strong>DOI<\/strong>: 10.3389\/fphar.2021.793332<\/p>\n<p><strong>\u7b80\u62ec<\/strong>\uff1a\u5efa\u7acb\u673a\u5668\u5b66\u4e60\u6a21\u578b\u7684\u7ecf\u5178\u6d41\u7a0b\uff0c\u503c\u5f97\u6ce8\u610f\u7684\u662f\u5305\u62ec\u5316\u5408\u7269\u7279\u5f81\u63d0\u53d6\uff0c\u6a21\u578b\u5efa\u7acb\/\u8bc4\u4ef7\u90fd\u662f\u5728online chemical database and modeling environment (OCHEM)\u5e73\u53f0\u5b8c\u6210\u7684\u3002\u6587\u7ae0\u5efa\u7acb\u7684\u6a21\u578b\u4e5f\u4e0a\u4f20\u5230\u8be5\u5e73\u53f0\u4e2d\uff1ahttps:\/\/ochem.eu\/article\/140251<\/p>"},{"title":"R\u57fa\u7840\u914d\u7f6e","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/200-r-basics\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/200-r-basics\/","description":"<h1 id=\"1r\u955c\u50cf\u8bbe\u7f6e\">1\u3001R\u955c\u50cf\u8bbe\u7f6e<\/h1>\n<p>\uff081\uff09\u4e34\u65f6\u8bbe\u7f6e\uff0c\u91cd\u542fR\u4e4b\u540e\u4f1a\u91cd\u7f6e<\/p>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>options(BioC_mirror=<span style=\"color:#0ff;font-weight:bold\">&#34;http:\/\/mirrors.tuna.tsinghua.edu.cn\/bioconductor\/&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>options(<span style=\"color:#0ff;font-weight:bold\">&#34;repos&#34;<\/span> = c(CRAN=<span style=\"color:#0ff;font-weight:bold\">&#34;https:\/\/mirrors.tuna.tsinghua.edu.cn\/CRAN\/&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>options()$repos \n<\/span><\/span><span style=\"display:flex;\"><span>options()$BioC_mirror\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><p>\uff082\uff09\u901a\u8fc7\u8bbe\u7f6e<code>.Rprofile<\/code>\u6587\u4ef6\u6c38\u4e45\u8bbe\u7f6e<\/p>\n<ul>\n<li>linux<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u8fdb\u5165\u5bb6\u76ee\u5f55<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">cd<\/span> ~\n<\/span><\/span><span style=\"display:flex;\"><span>vi ~\/.Rprofile\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u8f93\u5165\u4e0b\u9762\u4e24\u884c\u4ee3\u7801<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>options(repos=structure(c(CRAN=<span style=\"color:#0ff;font-weight:bold\">&#34;https:\/\/mirrors.tuna.tsinghua.edu.cn\/CRAN\/&#34;<\/span>))) \n<\/span><\/span><span style=\"display:flex;\"><span>options(BioC_mirror=<span style=\"color:#0ff;font-weight:bold\">&#34;https:\/\/mirrors.tuna.tsinghua.edu.cn\/bioconductor&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4fdd\u5b58\u9000\u51fa<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>window<\/li>\n<\/ul>\n<p><strong>\u7b2c\u2460\u6b65<\/strong>\uff1a\u6253\u5f00\u8bb0\u4e8b\u672c\u6216\u8005\u5176\u4ed6\u6587\u672c\u7f16\u8f91\u8f6f\u4ef6\uff1b\n<strong>\u7b2c\u2461\u6b65<\/strong>\uff1a\u8f93\u5165\u9ed8\u8ba4\u8bbe\u7f6e\uff08\u5185\u5bb9\u540c\u4e0a\u8ff0linux\u6848\u4f8b\uff09\uff1b\n<strong>\u7b2c\u2462\u6b65<\/strong>\uff1a\u4fdd\u5b58\u6587\u4ef6\u5230 \u201c\u6b64\u7535\u8111&gt;\u6587\u6863\u201d \/.Rprofile\uff1b\n<strong>\u7b2c\u2463\u6b65<\/strong>\uff1a\u91cd\u65b0\u8fdb\u5165R\/RStudio\u5373\u53ef\u3002<\/p>"},{"title":"\u4f7f\u7528igraph\u5305\u8fdb\u884c\u7f51\u7edc\u7ed3\u6784\u5206\u6790\u4e0e\u53ef\u89c6\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/200-igraph\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/200-igraph\/","description":"<h2 id=\"1\u521b\u5efa\u4e0e\u67e5\u770bigraph\u5bf9\u8c61\">1\u3001\u521b\u5efa\u4e0e\u67e5\u770bigraph\u5bf9\u8c61<\/h2>\n<h4 id=\"11-\u793a\u4f8b\u6570\u636e\">1.1 \u793a\u4f8b\u6570\u636e<\/h4>\n<ul>\n<li><code>igraph<\/code>\u5305\u63d0\u4f9b\u4e86\u5f88\u591a\u521b\u5efaigraph\u5bf9\u8c61\u7684\u51fd\u6570\u4e0e\u601d\u8def\u3002\u8fd9\u91cc\u91c7\u7528\u5e38\u7528\u7684\u57fa\u4e8edata.frame\u7684\u683c\u5f0f\u521b\u5efa\u3002<\/li>\n<li>\u793a\u4f8b\u6570\u636e\u6765\u81ea<code>STRINGdb<\/code>\u7684PPI\u86cb\u767d\u4e92\u4f5c\u6570\u636e\u4ee5\u53ca\u5bf9\u5e94\u57fa\u56e0\u7684\u4e0a\u4e0b\u8c03\u4fe1\u606f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">44\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">45\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(STRINGdb)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>string_db &lt;- STRINGdb$new(version=<span style=\"color:#0ff;font-weight:bold\">&#34;11&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                          species=<span style=\"color:#ff0;font-weight:bold\">9606<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                          score_threshold=<span style=\"color:#ff0;font-weight:bold\">200<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>                          input_directory=<span style=\"color:#0ff;font-weight:bold\">&#34;&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>data(diff_exp_example1)\n<\/span><\/span><span style=\"display:flex;\"><span>genes = rbind(head(diff_exp_example1,<span style=\"color:#ff0;font-weight:bold\">30<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>              tail(diff_exp_example1,<span style=\"color:#ff0;font-weight:bold\">30<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>head(genes)\n<\/span><\/span><span style=\"display:flex;\"><span>genes_mapped &lt;- string_db$map(genes, <span style=\"color:#0ff;font-weight:bold\">&#34;gene&#34;<\/span> )\n<\/span><\/span><span style=\"display:flex;\"><span>head(genes_mapped)\n<\/span><\/span><span style=\"display:flex;\"><span>ppi = string_db$get_interactions(genes_mapped$STRING_id) %&gt;% distinct()\n<\/span><\/span><span style=\"display:flex;\"><span>edges = ppi %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::left_join(genes_mapped[,c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>)], by=c(<span style=\"color:#0ff;font-weight:bold\">&#39;from&#39;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#39;STRING_id&#39;<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::rename(Gene1=gene) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::left_join(genes_mapped[,c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>)], by=c(<span style=\"color:#0ff;font-weight:bold\">&#39;to&#39;<\/span>=<span style=\"color:#0ff;font-weight:bold\">&#39;STRING_id&#39;<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::rename(Gene2=gene) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(Gene1, Gene2, combined_score)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>nodes = genes_mapped %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::filter(gene %in% c(edges$Gene1, edges$Gene2)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::mutate(log10P = -log10(pvalue),\n<\/span><\/span><span style=\"display:flex;\"><span>                direction = ifelse(logFC&gt;<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;Up&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;Down&#34;<\/span>)) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::select(gene, log10P, logFC, direction)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\u8fb9\u4fe1\u606f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(edges)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Gene1   Gene2 combined_score<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 UPK3B     PTS            244<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 GSTM5  ACOT12            204<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 GRHL3  IGDCC4            238<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 TNNC1 ATP13A1            222<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5  NNAT  VSTM2L            281<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6  EZH2   RBBP7            996<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">###\u8282\u70b9\u4fe1\u606f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(nodes)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      gene   log10P    logFC direction<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  VSTM2L 3.992252 3.333461        Up<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2   TNNC1 3.534468 2.932060        Up<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3    MGAM 3.515558 2.369738        Up<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4  IGDCC4 3.290137 2.409806        Up<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5   UPK3B 3.248490 2.073072        Up<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 SLC52A1 3.227019 3.214998        Up<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h4 id=\"12-\u521b\u5efa\u5bf9\u8c61\">1.2 \u521b\u5efa\u5bf9\u8c61<\/h4>\n<p>\u4f7f\u7528<code>graph_from_data_frame()<\/code>\u51fd\u6570\u521b\u5efa<\/p>"},{"title":"\u6587\u732e--\u673a\u5668\u5b66\u4e60\u6a21\u578b\u9884\u6d4b\u836f\u7269\u80be\u6bd2\u6027-2","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/201-nephrotoxicity-ml-2\/","pubDate":"Fri, 10 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/201-nephrotoxicity-ml-2\/","description":"<blockquote>\n<p>\u9898\u76ee\uff1aIn silico prediction of potential drug-induced nephrotoxicity with machine learning methods<\/p>\n<p>\u671f\u520a | \u65e5\u671f \uff1a Journal of Applied Toxicology | 11 April 2022<\/p>\n<p>\u7b80\u4ecb\uff1a\u6807\u51c6\u7684\u673a\u5668\u5b66\u4e60\u6a21\u578b\u5206\u6790\u6d41\u7a0b\uff0c\u4ece\u6570\u636e\u6536\u96c6\u5230\u6570\u636e\u6574\u7406\uff0c\u4ece\u8bad\u7ec3\u6a21\u578b\u5230\u8bc4\u4ef7\u6a21\u578b\u3002<\/p><\/blockquote>\n<h2 id=\"1\u6570\u636e\u6536\u96c6\">1\u3001\u6570\u636e\u6536\u96c6<\/h2>\n<h3 id=\"11-\u6807\u7b7e\u6570\u636e\">1.1 \u6807\u7b7e\u6570\u636e<\/h3>\n<p>\uff081\uff09\u4eceSIDER\u3001DrugBank\u3001ChEMBL\u4ee5\u53caTCM@taiwan\u7b494\u4e2a\u6570\u636e\u5e93\u6536\u96c6\u4e861366\u4e2a\u6807\u7b7e\u5316\u5408\u7269<\/p>"},{"title":"R\u8bed\u8a00\u7684\u591a\u7ebf\u7a0b\u5faa\u73af\u8bed\u53e5","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/201-r-multithreading\/","pubDate":"Tue, 17 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/201-r-multithreading\/","description":"<blockquote>\n<p>\u5728\u9047\u5230R\u91cc\u7684\u5927\u91cf\u5faa\u73af\u64cd\u4f5c\u65f6\uff0c\u53ef\u4ee5\u8003\u8651\u591a\u7ebf\u7a0b\u5904\u7406\u65b9\u5f0f\uff0c\u63d0\u9ad8\u5206\u6790\u901f\u5ea6\u3002\u5177\u4f53\u4f7f\u7528\u65b9\u6cd5\u9488\u5bf9window\u4e0elinux\/mac\u5e73\u53f0\u6709\u6240\u533a\u522b\u3002\u76f8\u5173\u7b14\u8bb0\u5982\u4e0b<\/p><\/blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u67e5\u770b\u7cfb\u7edf\u5e73\u53f0 Windows\/Linux<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>Sys.info()[<span style=\"color:#0ff;font-weight:bold\">&#39;sysname&#39;<\/span>]\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u4e00linuxmac\u5e73\u53f0\">\u4e00\u3001Linux\/Mac\u5e73\u53f0<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(parallel)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u68c0\u6d4b\u7cfb\u7edf\u7684CPU\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>detectCores()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1lapply-\u591a\u7ebf\u7a0b\">1\u3001lapply \u591a\u7ebf\u7a0b<\/h3>\n<ul>\n<li><code>mclapply()<\/code>\u51fd\u6570\uff0c\u5173\u952e\u662f<code>mc.cores<\/code>\u53c2\u6570\u8bbe\u7f6e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(parallel)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5e76\u884c4\u4e2a\u7ebf\u7a0b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res = mclapply(<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#fff;font-weight:bold\">function<\/span>(x){\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t}, mc.cores = <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\t\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5e76\u884c\u5904\u7406\u4e0d\u5f71\u54cd\u987a\u5e8f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>res = mclapply(<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">1000<\/span>, <span style=\"color:#fff;font-weight:bold\">function<\/span>(x){\n<\/span><\/span><span style=\"display:flex;\"><span>\tprint(x)\n<\/span><\/span><span style=\"display:flex;\"><span>    x2 = x*x  \n<\/span><\/span><span style=\"display:flex;\"><span>    Sys.sleep(<span style=\"color:#ff0;font-weight:bold\">0.1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span>(c(x, x2))\n<\/span><\/span><span style=\"display:flex;\"><span>}, mc.cores = <span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>res_df = do.call(rbind, res)\n<\/span><\/span><span style=\"display:flex;\"><span>head(res_df,<span style=\"color:#ff0;font-weight:bold\">3<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      [,1] [,2]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1,]    1    1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [2,]    2    4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [3,]    3    9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>tail(res_df,<span style=\"color:#ff0;font-weight:bold\">3<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         [,1]    [,2]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [998,]  998  996004<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [999,]  999  998001<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1000,] 1000 1000000<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2for\u5faa\u73af-\u591a\u7ebf\u7a0b\">2\u3001for\u5faa\u73af \u591a\u7ebf\u7a0b<\/h3>\n<ul>\n<li>\u914d\u5408<code>foreach<\/code>\u5305\u3002\u53ef\u901a\u8fc7\u8c03\u6574\u53c2\u6570\uff0c\u8bbe\u7f6e\u7ed3\u679c\u8fd4\u56de\u7684\u5f62\u5f0f\uff0c\u8be6\u89c1<a href=\"https:\/\/www.zsccy.xyz\/md\/2018-04-08-r%E8%AF%AD%E8%A8%80%E5%B9%B6%E8%A1%8C%E5%8C%96%E8%AE%A1%E7%AE%97%E4%B9%8Bforeach%E5%8C%85\/\">\u76f8\u5173\u7b14\u8bb0<\/a>\uff0c\u6216\u8005\u8be5\u5305\u7684\u5e2e\u52a9\u6587\u6863\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(foreach)\n<\/span><\/span><span style=\"display:flex;\"><span>library(doParallel)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>cl=makeCluster(<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>registerDoParallel(cl) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4e13\u95e8\u52a0\u8f7d\u6240\u9700\u8981\u7684\u5206\u6790\u5305<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>clusterEvalQ(cl, library(package1))\n<\/span><\/span><span style=\"display:flex;\"><span>clusterEvalQ(cl, library(package1)) \n<\/span><\/span><span style=\"display:flex;\"><span> \n<\/span><\/span><span style=\"display:flex;\"><span>res = foreach(i = <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>) %dopar% {\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t}\n<\/span><\/span><span style=\"display:flex;\"><span>stopCluster(cl)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u4e8cwindow\u5e73\u53f0\">\u4e8c\u3001window\u5e73\u53f0<\/h1>\n<ul>\n<li>\u4e2a\u4eba\u89c9\u5f97window\u5e73\u53f0\u7684\u7b14\u8bb0\u672c\u7535\u8111\u53ef\u80fd\u8fd8\u662f\u4e0d\u592a\u9002\u5408\u591a\u7ebf\u7a0b\u7684\u4f7f\u7528<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(parallel)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u68c0\u6d4b\u7cfb\u7edf\u7684CPU\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>detectCores()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1lapply-\u591a\u7ebf\u7a0b-1\">1\u3001lapply \u591a\u7ebf\u7a0b<\/h3>\n<ul>\n<li><code>parLapply()<\/code>\u51fd\u6570<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>cl &lt;- makeCluster(<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4e13\u95e8\u52a0\u8f7d\u6240\u9700\u8981\u7684\u5206\u6790\u5305<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>clusterExport(cl, library(packages))\n<\/span><\/span><span style=\"display:flex;\"><span>res=parLapply(cl, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#fff;font-weight:bold\">function<\/span>(x){\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t&lt;code&gt;\n<\/span><\/span><span style=\"display:flex;\"><span>\t})\n<\/span><\/span><span style=\"display:flex;\"><span>stopCluster(cl) <span style=\"color:#007f7f\">#\u9700\u8981\u663e\u5f0f\u7684\u91ca\u653e\u5df2\u52a0\u8f7d\u7684\u7ebf\u7a0b\uff0c\u6bd4\u8f83\u9ebb\u70e6<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2for\u5faa\u73af\u7684\u591a\u7ebf\u7a0b\u8c03\u7528\u540c\u4e0a\">2\u3001for\u5faa\u73af\u7684\u591a\u7ebf\u7a0b\u8c03\u7528\u540c\u4e0a<\/h3>\n<hr>\n<ul>\n<li>\u53c2\u8003\u6559\u7a0b\n<a href=\"https:\/\/www.biostars.org\/p\/273107\/\">https:\/\/www.biostars.org\/p\/273107\/<\/a><\/li>\n<\/ul>"},{"title":"\u91cd\u542f\u968f\u673a\u6e38\u8d70\u7b97\u6cd5\u4e0eRandomWalkRestartMH\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/201-random-walk\/","pubDate":"Tue, 19 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/201-random-walk\/","description":"<h2 id=\"1\u5173\u4e8erwr\">1\u3001\u5173\u4e8eRWR<\/h2>\n<h3 id=\"11-\u7b97\u6cd5\u7b80\u4ecb\">1.1 \u7b97\u6cd5\u7b80\u4ecb<\/h3>\n<ul>\n<li>\n<p>Random Walk with Restart\uff0cRWR\u91cd\u542f\u968f\u673a\u6e38\u8d70\u7b97\u6cd5<\/p>\n<\/li>\n<li>\n<p>\u5728\u7ed9\u5b9a\u7684\u4e00\u4e2a\u7531\u8282\u70b9\u548c\u8fb9\u7ec4\u6210\u7684\u7f51\u7edc\u7ed3\u6784\u4e2d\uff08\u4e0b\u9762\u5747\u5df2PPI\u86cb\u767d\u76f8\u4e92\u4f5c\u7528\u7f51\u7edc\u4e3a\u4f8b\uff09\uff0c\u9009\u62e9\u5176\u4e2d\u4e00\u4e2a\u6216\u8005\u4e00\u7ec4\u57fa\u56e0\u3002\u6211\u4eec\u60f3\u77e5\u9053\u5176\u4f59\u7684\u54ea\u4e9b\u57fa\u56e0\u4e0e\u6211\u4eec\u5148\u524d\u6240\u9009\u62e9\u7684\u4e00\u4e2a\u6216\u8005\u4e00\u7ec4\u57fa\u56e0\u6700\u76f8\u5173\u3002\u6b64\u65f6\u53ef\u4ee5\u7528\u5230RWR\uff0c\u7b80\u5355\u539f\u7406\u5982\u4e0b\uff1a<\/p>"},{"title":"Gene2vec\u7b97\u6cd5\u6839\u636e\u57fa\u56e0\u5bf9\u8ba1\u7b97\u57fa\u56e0\u8868\u793a","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/202-gene2vec\/","pubDate":"Thu, 23 Jan 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/202-gene2vec\/","description":"<ul>\n<li>\n<p>\u5b66\u4e60Genecompass\u65f6\uff0c\u4e86\u89e3\u53c2\u8003\u5230\u53ef\u4ee5\u57fa\u56e0\u8c03\u63a7\u7f51\u7edc\u4fe1\u606f\uff08Gene pair\uff09\uff0c\u8ba1\u7b97Gene\u7684\u5d4c\u5165\u8868\u793a\uff08Embedding\uff09<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/jingcheng-du\/Gene2vec\">https:\/\/github.com\/jingcheng-du\/Gene2vec<\/a><\/li>\n<li>\u5173\u952e\u662f\u8981\u5728python=3.7\u73af\u5883\u4e0b\uff0c\u5b89\u88c5genesim=3.4.0<\/li>\n<\/ul>\n<\/li>\n<li>\n<p>\u5173\u4e8eGenesim\u662fNLP\u9886\u57df\u53d7\u6b22\u8fce\u7684\u5de5\u5177\uff1ahttps:\/\/github.com\/jingcheng-du\/Gene2vec<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bscGPT","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/202-scgpt\/","pubDate":"Sun, 29 Sep 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/202-scgpt\/","description":"<blockquote>\n<p><strong>\u6587\u732e<\/strong>\uff1a scGPT: toward building a foundation model for single-cell multi-omics using generative AI<\/p>\n<p><strong>\u65f6\u95f4<\/strong>\uff1a2024 Feb. (Published)<\/p>\n<p><strong>\u671f\u520a<\/strong>\uff1aNature Method<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1038\/s41592-024-02201-0<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bscBERT","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/203-scbert\/","pubDate":"Sat, 09 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/203-scbert\/","description":"<p><strong>\u6807\u9898<\/strong>: scBERT as a large-scale pretrained deep language model for cell type annotation of single-cell RNA-seq data<\/p>\n<p><strong>\u671f\u520a|\u65e5\u671f<\/strong>\uff1anature machine intelligence, 2022\/09<\/p>\n<p><strong>DOI<\/strong>\uff1ahttps:\/\/doi.org\/10.1038\/s42256-022-00534-z<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bCellPLM","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/204-cellplm\/","pubDate":"Sat, 16 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/204-cellplm\/","description":"<blockquote>\n<p><strong>\u6807\u9898<\/strong> CELLPLM: PRE-TRAINING OF CELL LANGUAGE MODEL BEYOND SINGLE CELLS <a href=\"https:\/\/openreview.net\/forum?id=BKXvPDekud\">https:\/\/openreview.net\/forum?id=BKXvPDekud<\/a><\/p>\n<p><strong>\u53d1\u8868<\/strong> ICLR (The International Conference on Learning Representations) 2024<\/p>\n<p><strong>\u901a\u8baf<\/strong> Jiliang Tang | Computer science and engineering department | Michigan State University | <a href=\"https:\/\/www.cse.msu.edu\/~tangjili\/\">https:\/\/www.cse.msu.edu\/~tangjili\/<\/a><\/p><\/blockquote>\n<h1 id=\"1-\u7b80\u4ecb\">1. \u7b80\u4ecb<\/h1>\n<p><strong>\uff081\uff09scRNA-seq data\u4e0enatural language\u7684\u533a\u522b<\/strong><\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bGeneformer","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/205-geneformer\/","pubDate":"Sun, 15 Dec 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/205-geneformer\/","description":"<blockquote>\n<ul>\n<li><em>Transfer learning enables predictions in network biology<\/em> | Nature<\/li>\n<li><a href=\"https:\/\/doi.org\/10.1038\/s41586-023-06139-9\">https:\/\/doi.org\/10.1038\/s41586-023-06139-9<\/a><\/li>\n<li>Received: March 2022 \/ Accepted: 27 April 2023<\/li>\n<li>Data &amp; Code: <a href=\"https:\/\/huggingface.co\/ctheodoris\">https:\/\/huggingface.co\/ctheodoris<\/a><\/li>\n<\/ul><\/blockquote>\n<p><strong>\u901a\u8baf\u4f5c\u8005<\/strong>\uff1aPatrick T. Ellinor, M.D., Ph.D.<\/p>\n<ul>\n<li><a href=\"https:\/\/www.ellinorlab.org\/team\/\">https:\/\/www.ellinorlab.org\/team\/<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20241215164105420.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20241215164105420.png\" alt=\"image-20241215164105420\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bGenecompass","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/206-genecompass\/","pubDate":"Sun, 12 Jan 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/206-genecompass\/","description":"<blockquote>\n<ul>\n<li>\n<p>GeneCompass: deciphering universal gene regulatory mechanisms with a knowledge-informed cross-species foundation model<\/p>\n<\/li>\n<li>\n<p><em>Cell research | 2024.10<\/em><\/p>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/doi.org\/10.1038\/s41422-024-01034-y\">https:\/\/doi.org\/10.1038\/s41422-024-01034-y<\/a><\/p>\n<p><a href=\"https:\/\/github.com\/xCompass-AI\/GeneCompass\">https:\/\/github.com\/xCompass-AI\/GeneCompass<\/a><\/p><\/blockquote>\n<p><strong>(\u6700\u540e)\u901a\u8baf\u4f5c\u8005<\/strong> Xin Li<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20250112124344122.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20250112124344122.png\" alt=\"image-20250112124344122\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bGeneformer V2[\u9884\u5370\u672c]","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/207-geneformer-v2\/","pubDate":"Sat, 18 Jan 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/207-geneformer-v2\/","description":"<blockquote>\n<ul>\n<li>Quantized multi-task learning for context-specific representations of gene network dynamics<\/li>\n<li>2024.8.19, bioRxiv \u3010\u9884\u5370\u672c\u3011<\/li>\n<li><a href=\"https:\/\/doi.org\/10.1101\/2024.08.16.608180\">https:\/\/doi.org\/10.1101\/2024.08.16.608180<\/a><\/li>\n<\/ul><\/blockquote>\n<p><strong>\u901a\u8baf\u4f5c\u8005<\/strong>\uff1aChristina Theodoris \uff082021 Geneformer\u7684\u4e00\u4f5c\uff0c\u73b0\u5728\u5e94\u8be5\u662f\u72ec\u7acb\u7684PI\u4e86\uff09<\/p>\n<p><a href=\"https:\/\/gladstone.org\/people\/christina-theodoris\">https:\/\/gladstone.org\/people\/christina-theodoris<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20250118123335727.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20250118123335727.png\" alt=\"image-20250118123335727\"  \/>\n<\/p>"},{"title":"\u6587\u732e--\u4f7f\u7528\u77ed\u8bfb\u957f\u548c\u957f\u8bfb\u957fRNA\u6d4b\u5e8f\u65b9\u6cd5\u9610\u660eRNA\u52a0\u5de5\u7684\u534f\u8c03\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/208-rna-isoforms\/","pubDate":"Fri, 12 Dec 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/208-rna-isoforms\/","description":"<p><strong>Elucidating the coordination of RNA processing using short-read and long-read RNA-sequencing methods<\/strong><\/p>\n<p><strong>\u4f7f\u7528\u77ed\u8bfb\u957f\u548c\u957f\u8bfb\u957f RNA \u6d4b\u5e8f\u65b9\u6cd5\u9610\u660e RNA \u52a0\u5de5\u7684\u534f\u8c03\u6027<\/strong><\/p>\n<h3 id=\"\u521b\u5efa2025-12-12--\u795e\u7ecf\u86d9\u7684\u85cf\u5b9d\u9601\">\u521b\u5efa\uff1a2025-12-12 | \u795e\u7ecf\u86d9\u7684\u85cf\u5b9d\u9601<\/h3>\n<ul>\n<li><strong>\u65f6\u95f4<\/strong>\uff1a06 October 2025<\/li>\n<li><strong>\u671f\u520a<\/strong>\uff1aNature Reviews Molecular Cell Biology<\/li>\n<\/ul>\n<blockquote>\n<p><strong>Tip<\/strong>\uff1a\u6587\u7ae0\u7684\u6982\u5ff5\u5f88\u591a\uff0c\u4f46\u662f\u6ca1\u6709\u505a\u8fc7\u591a\u4ecb\u7ecd\uff0c\u6240\u4ee5\u8be5\u6587\u5305\u542b\u4e86\u4e00\u4e9b\u80cc\u666f\u4ecb\u7ecd\u4ee5\u53ca\u6211\u4e2a\u4eba\u7684\u7406\u89e3\u3002<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u6270\u52a8\u9884\u6d4b\u6a21\u578bBenchmark","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/209-scperturb\/","pubDate":"Sat, 20 Dec 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/209-scperturb\/","description":"<blockquote>\n<ul>\n<li>Benchmarking algorithms for generalizable single-cell perturbation response prediction<\/li>\n<li>11 December 2025, Nature Methods<\/li>\n<li><a href=\"https:\/\/doi.org\/10.1038\/s41592-025-02980-0\">https:\/\/doi.org\/10.1038\/s41592-025-02980-0<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/bm2-lab\/scPerturBench\/\">https:\/\/github.com\/bm2-lab\/scPerturBench\/<\/a><\/li>\n<\/ul><\/blockquote>\n<h3 id=\"1-\u4ecb\u7ecd\">1. \u4ecb\u7ecd<\/h3>\n<p><strong>\u80cc\u666f<\/strong><\/p>\n<ul>\n<li>\n<p>\u5355\u7ec6\u80deCRISPR\u5b9e\u9a8c\u6210\u672c\u9ad8\uff1b<\/p>\n<\/li>\n<li>\n<p>\u76ee\u524d\u4e24\u7c7b\u9884\u6d4b\u6a21\u578b\uff1acontext generalization &amp; perturbation generalization<\/p>\n<\/li>\n<li>\n<p>Foundation model v.s. linear baseline model<\/p>\n<\/li>\n<li>\n<p>\u5982\u4f55\u5408\u7406\u7684\u8bc4\u4ef7\u6a21\u578b\u7684\u9884\u6d4b\u80fd\u529b<\/p>"},{"title":"\u6587\u732e--\u5229\u7528\u7eb3\u7c73\u5b54\u957f\u8bfb\u957f\u6d4b\u5e8f\u8fdb\u884c\u5355\u7ec6\u80de\u548c\u7a7a\u95f4\u53ef\u53d8\u526a\u63a5\u5206\u6790","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/210-nanopore-splicing\/","pubDate":"Fri, 09 Jan 2026 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/210-nanopore-splicing\/","description":"<p><strong>Single cell and spatial alternative splicing analysis with Nanopore long read sequencing<\/strong><\/p>\n<p><strong>\u5229\u7528\u7eb3\u7c73\u5b54\u957f\u8bfb\u957f\u6d4b\u5e8f\u8fdb\u884c\u5355\u7ec6\u80de\u548c\u7a7a\u95f4\u53ef\u53d8\u526a\u63a5\u5206\u6790<\/strong><\/p>\n<h3 id=\"\u521b\u5efa2026-01-08--\u795e\u7ecf\u86d9\u7684\u85cf\u5b9d\u9601\">\u521b\u5efa\uff1a2026-01-08 | \u795e\u7ecf\u86d9\u7684\u85cf\u5b9d\u9601<\/h3>\n<ul>\n<li><strong>\u65f6\u95f4<\/strong>\uff1a19 July 2025<\/li>\n<li><strong>\u671f\u520a<\/strong>\uff1aNature Communications<\/li>\n<\/ul>\n<blockquote>\n<p><strong>Tip<\/strong>\uff1a\u6587\u7ae0\u7684\u6982\u5ff5\u5f88\u591a\uff0c\u4f46\u662f\u6ca1\u6709\u505a\u8fc7\u591a\u4ecb\u7ecd\uff0c\u6240\u4ee5\u8be5\u6587\u5305\u542b\u4e86\u4e00\u4e9b\u80cc\u666f\u4ecb\u7ecd\u4ee5\u53ca\u6211\u4e2a\u4eba\u7684\u7406\u89e3\u3002<\/p>"},{"title":"R-\u6570\u636e\u5206\u6790-dplyr\u8868\u683c\u64cd\u4f5c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/210-dplyr\/","pubDate":"Sun, 08 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/210-dplyr\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -- Attaching packages ----------------------------------------------------- tidyverse 1.3.1 --<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u221a ggplot2 3.3.5     \u221a purrr   0.3.4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u221a tibble  3.1.2     \u221a dplyr   1.0.7<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u221a tidyr   1.1.3     \u221a stringr 1.4.0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u221a readr   2.0.0     \u221a forcats 0.5.1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -- Conflicts -------------------------------------------------------- tidyverse_conflicts() --<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># x dplyr::filter() masks stats::filter()<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># x dplyr::lag()    masks stats::lag()<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1\u8868\u683c\u7b5b\u9009\">1\u3001\u8868\u683c\u7b5b\u9009<\/h1>\n<h2 id=\"11-select-\u7b5b\u9009\u5217\">1.1 select \u7b5b\u9009\u5217<\/h2>\n<p><code>col1:col3<\/code>  \u9009\u53d6\u8d77\u6b62\u8303\u56f4\u7684\u5217\uff1b<\/p>"},{"title":"\u6587\u732e--\u5355\u7ec6\u80de\u7ec4\u5b66\u5927\u6a21\u578b\u4e4bNicheformer","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/211-nicheformer\/","pubDate":"Sat, 17 Jan 2026 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/211-nicheformer\/","description":"<blockquote>\n<p><strong>\u6807\u9898<\/strong> Nicheformer: a foundation model for single-cell and spatial omics <a href=\"https:\/\/doi.org\/10.1038\/s41592-025-02814-z\">https:\/\/doi.org\/10.1038\/s41592-025-02814-z<\/a><\/p>\n<p><strong>\u53d1\u8868<\/strong> nature methods, 2025\u5e7410\u6708<\/p>\n<p><strong>\u901a\u8baf<\/strong> Fabian J. Theis<\/p>\n<p>Github\uff1ahttps:\/\/github.com\/theislab\/nicheformer<\/p>"},{"title":"R-\u6570\u636e\u5206\u6790-reshape2\u8868\u683c\u957f\u77ed\u8f6c\u6362","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/211-reshape2\/","pubDate":"Sat, 25 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/211-reshape2\/","description":"<img src=\"https:\/\/andeekaplan.com\/images\/blog\/01142014widevstall.png\" alt=\"Andee Kaplan\" style=\"zoom: 50%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(reshape2)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1matrix\">1\u3001matrix<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">123<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>scores_mt = matrix(round(rnorm(<span style=\"color:#ff0;font-weight:bold\">40<\/span>, mean = <span style=\"color:#ff0;font-weight:bold\">80<\/span>, sd=<span style=\"color:#ff0;font-weight:bold\">10<\/span>)), \n<\/span><\/span><span style=\"display:flex;\"><span>                nrow = <span style=\"color:#ff0;font-weight:bold\">10<\/span>, ncol = <span style=\"color:#ff0;font-weight:bold\">4<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                dimnames = list(paste0(<span style=\"color:#0ff;font-weight:bold\">&#34;Stu&#34;<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                                paste0(<span style=\"color:#0ff;font-weight:bold\">&#34;Subject-&#34;<\/span>,<span style=\"color:#fff;font-weight:bold\">LETTERS<\/span>[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>])))\n<\/span><\/span><span style=\"display:flex;\"><span>class(scores_mt)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;matrix&#34; &#34;array&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(scores_mt)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Stu1        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Stu2        78        84        78        77<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Stu3        96        84        70        89<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u5bbd\u53d8\u957f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped = melt(scores,\n<\/span><\/span><span style=\"display:flex;\"><span>                value.name = <span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(reshaped)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Var1      Var2 Score<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1 Subject-A    74<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2 Subject-A    78<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3 Subject-A    96<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## Var1 --- rownames<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## Var2 --- colnames<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) \u957f\u53d8\u5bbd\uff08\u8fd8\u539f\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dcast(Var1 ~ Var2) %&gt;% head()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Var1 Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2        78        84        78        77<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3        96        84        70        89<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2dataframe\">2\u3001data.frame<\/h1>\n<h2 id=\"21-\u7b80\u5355\">2.1 \u7b80\u5355<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>scores_df = scores_mt %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  as.data.frame() %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  tibble::rownames_to_column(<span style=\"color:#0ff;font-weight:bold\">&#34;Name&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>class(scores_df)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;data.frame&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(scores_df)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Name Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2        78        84        78        77<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3        96        84        70        89<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u5bbd\u53d8\u957f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped = scores_df %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  melt(id=<span style=\"color:#0ff;font-weight:bold\">&#34;Name&#34;<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>       variable.name=<span style=\"color:#0ff;font-weight:bold\">&#34;Subject&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>       value.name = <span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(reshaped)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Name   Subject Score<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1 Subject-A    74<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2 Subject-A    78<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3 Subject-A    96<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) \u957f\u53d8\u5bbd\uff08\u8fd8\u539f\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dcast(Name ~ Subject, \n<\/span><\/span><span style=\"display:flex;\"><span>        value.var = <span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>) %&gt;% head()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#    Name Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  Stu1        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu10        76        75        93        76<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3  Stu2        78        84        78        77<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"22-\u590d\u6742\">2.2 \u590d\u6742<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>scores_df_Anno = scores_df %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>                    dplyr::mutate(Class=paste0(<span style=\"color:#0ff;font-weight:bold\">&#34;Class&#34;<\/span>,rep(c(<span style=\"color:#0ff;font-weight:bold\">&#34;01&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;02&#34;<\/span>), <span style=\"color:#ff0;font-weight:bold\">5<\/span>)),\n<\/span><\/span><span style=\"display:flex;\"><span>                                  Age=round(rnorm(<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">20<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>)), .before=<span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(scores_df_Anno)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Name   Class Age Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1 Class01  20        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2 Class02  20        78        84        78        77<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3 Class01  20        96        84        70        89<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(1) \u5bbd\u53d8\u957f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped = scores_df_Anno %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  melt(id=c(<span style=\"color:#0ff;font-weight:bold\">&#34;Name&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;Class&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;Age&#34;<\/span>), \n<\/span><\/span><span style=\"display:flex;\"><span>       variable.name=<span style=\"color:#0ff;font-weight:bold\">&#34;Subject&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>       value.name = <span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>head(reshaped)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   Name   Class Age   Subject Score<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1 Stu1 Class01  20 Subject-A    74<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu2 Class02  20 Subject-A    78<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 Stu3 Class01  20 Subject-A    96<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##(2) \u957f\u53d8\u5bbd\uff08\u8fd8\u539f\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>reshaped %&gt;% dcast(Name + Class + Age ~ Subject,\n<\/span><\/span><span style=\"display:flex;\"><span>                   value.var = <span style=\"color:#0ff;font-weight:bold\">&#34;Score&#34;<\/span>) %&gt;% head()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#    Name   Class Age Subject-A Subject-B Subject-C Subject-D<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  Stu1 Class01  20        74        92        69        84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 Stu10 Class02  21        76        75        93        76<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3  Stu2 Class02  20        78        84        78        77<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3list\">3\u3001list<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>scores_list = list(Stu1=c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>), Stu2=c(<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>), Stu3=c(<span style=\"color:#ff0;font-weight:bold\">5<\/span>,<span style=\"color:#ff0;font-weight:bold\">6<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $Stu1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 1 2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $Stu2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 3 4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># $Stu3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 5 6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>melt(scores_list)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#   value   L1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1     1 Stu1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2     2 Stu1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3     3 Stu2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4     4 Stu2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5     5 Stu3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6     6 Stu3<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"R-\u53ef\u89c6\u5316-ggplot2\u7ed8\u56fe\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/212-ggplot2\/","pubDate":"Sun, 03 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/212-ggplot2\/","description":"<blockquote>\n<p>ggplot2\u5305\u4e00\u65b9\u9762\u53ef\u4ee5\u5b9e\u73b0\u591a\u79cd\u5f62\u5f0f\u7684\u6570\u636e\u53ef\u89c6\u5316\u3001\u6bd4\u5982\u7bb1\u56fe\u3001\u67f1\u72b6\u56fe\u7b49\uff1b\u53e6\u4e00\u65b9\u9762\u4e5f\u53ef\u4ee5\u4ece\u591a\u4e2a\u89d2\u5ea6\u8fdb\u884c\u7f8e\u5316\u3001\u4fee\u9970\u3002\u5bf9\u4e8e\u524d\u8005\uff0c\u4e4b\u524d\u5bf9ggplot2\u7684\u67f1\u72b6\u56fe\u3001\u7bb1\u56fe\u7528\u6cd5\u8fdb\u884c\u4e86\u8be6\u7ec6\u7684\u5b66\u4e60\u3002\u5173\u4e8e\u5176\u5b83\u7c7b\u578b\u7684\u56fe\uff0c\u4f8b\u5982\u5bc6\u5ea6\u56fe\u3001\u6298\u7ebf\u56fe\u3001\u76f4\u65b9\u56fe\u7b49\uff0c\u53ef\u53c2\u8003\u4ed6\u4eba\u7684\u603b\u7ed3\uff0c\u4f8b\u5982\u4e0b\u9762\u7684sthda\u7f51\u7ad9\u3002<\/p>"},{"title":"R-\u53ef\u89c6\u5316-ggpubr\u5305\u5feb\u901f\u7ed8\u5236\u70b9\u56fe\u3001\u7ebf\u56fe\u4e0e\u67f1\u72b6\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/213-ggpubr\/","pubDate":"Sat, 23 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/213-ggpubr\/","description":"<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttp:\/\/www.sthda.com\/english\/articles\/24-ggpubr-publication-ready-plots\/\u3002<\/p>"},{"title":"R-\u53ef\u89c6\u5316-\u62fc\u56fepatchwork","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/214-patchwork\/","pubDate":"Sun, 04 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/214-patchwork\/","description":"<h1 id=\"\u4e00ggplot2\u7ec4\u56fe\">\u4e00\u3001ggplot2\u7ec4\u56fe<\/h1>\n<h2 id=\"0\u5b89\u88c5\u5305\u53ca\u793a\u4f8b\u56fe\">0\u3001\u5b89\u88c5\u5305\u53ca\u793a\u4f8b\u56fe<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># #install.packages(&#34;devtools&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># devtools::install_github(&#34;thomasp85\/patchwork&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 &lt;- ggplot(mtcars) + geom_point(aes(mpg, disp))\n<\/span><\/span><span style=\"display:flex;\"><span>p2 &lt;- ggplot(mtcars) + geom_boxplot(aes(gear, disp, group = gear))\n<\/span><\/span><span style=\"display:flex;\"><span>p3 &lt;- ggplot(mtcars) + geom_bar(aes(gear)) + facet_wrap(~cyl)\n<\/span><\/span><span style=\"display:flex;\"><span>p4 &lt;- ggplot(mtcars) + geom_bar(aes(carb))\n<\/span><\/span><span style=\"display:flex;\"><span>p5 &lt;- ggplot(mtcars) + geom_violin(aes(cyl, mpg, group = cyl))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1\u7b80\u5355\u4f7f\u7528\">1\u3001\u7b80\u5355\u4f7f\u7528<\/h2>\n<p>\uff081\uff09\u7b26\u53f7\u8fde\u63a5\uff1a<code>+<\/code>\u6216\u8005<code>|<\/code> \u5747\u8868\u793a\u5de6\u53f3\u62fc\u63a5\uff0c<code>\/<\/code>\u8868\u793a\u4e0a\u4e0b\u62fc\u63a5\uff0c<code>()<\/code>\u53ef\u4ee5\u7528\u4e8e\u8c03\u6574\u4f18\u5148\u7ea7\n\uff082\uff09\u51fd\u6570\u8c03\u7528\uff1a<code>wrap_plots()<\/code>\uff0c\u53ef\u901a\u8fc7\u5177\u4f53\u53c2\u6570\u8bbe\u7f6e\u6392\u5217\u65b9\u5f0f<\/p>"},{"title":"R-\u53ef\u89c6\u5316-\u97e6\u6069\u56fevenn","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/215-venn\/","pubDate":"Sat, 10 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/215-venn\/","description":"<h1 id=\"\u793a\u4f8b\u6570\u636e\">\u793a\u4f8b\u6570\u636e<\/h1>\n<p>3\u4e2a\u57fa\u56e0\u96c6\u5217\u8868\uff0c\u4e3alist\u683c\u5f0f<\/p>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>genes &lt;- paste0(<span style=\"color:#0ff;font-weight:bold\">&#34;gene&#34;<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">1000<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">20210302<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>gene_list &lt;- list(A = sample(genes,<span style=\"color:#ff0;font-weight:bold\">100<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                  B = sample(genes,<span style=\"color:#ff0;font-weight:bold\">200<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                  C = sample(genes,<span style=\"color:#ff0;font-weight:bold\">300<\/span>))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"\u4e00venndiagram\">\u4e00\u3001VennDiagram<\/h1>\n<ul>\n<li>\n<p>VennDiagram\u5305\u662f\u7ed8\u5236\u97e6\u6069\u56fe\u7684\u4e00\u4e2a\u7ecf\u5178\u5305\u3002<\/p>"},{"title":"R-\u53ef\u89c6\u5316-ggplot+ggpubr\u7ed8\u5236\u7bb1\u56feboxplot","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/216-boxplot\/","pubDate":"Sat, 05 Nov 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/216-boxplot\/","description":"<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-aad1ed8ff0e92e2f.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-aad1ed8ff0e92e2f.png\" alt=\"https:\/\/www.leansigmacorporation.com\/box-plot-with-minitab\/\" style=\"zoom: 50%;\" \/>\n<h1 id=\"\u4e00ggplot\u7ed8\u5236\u57fa\u7840\u7bb1\u56fe\">\u4e00\u3001ggplot\u7ed8\u5236\u57fa\u7840\u7bb1\u56fe<\/h1>\n<h2 id=\"0\u793a\u4f8b\u6570\u636e\">0\u3001\u793a\u4f8b\u6570\u636e<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u7ec4\u522b\u540d\u6700\u597d\u662f\u5b57\u7b26\u578b\uff1b\u5982\u679c\u662f\u6570\u503c\u7c7b\u578b\uff0c\u6700\u597d\u8f6c\u4e3a\u56e0\u5b50\u5316<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ToothGrowth$dose = factor(ToothGrowth$dose)\n<\/span><\/span><span style=\"display:flex;\"><span>summary(ToothGrowth)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       len        supp     dose   <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Min.   : 4.20   OJ:30   0.5:20  <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1st Qu.:13.07   VC:30   1  :20  <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Median :19.25           2  :20  <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Mean   :18.81                   <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3rd Qu.:25.27                   <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Max.   :33.90<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1\u57fa\u7840\u7ed8\u56fe\">1\u3001\u57fa\u7840\u7ed8\u56fe<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>p1 = ggplot(ToothGrowth, aes(x=dose, y=len, fill=dose)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot()\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = ggplot(ToothGrowth, aes(x=dose, y=len, fill=supp)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot()\n<\/span><\/span><span style=\"display:flex;\"><span>p1 | p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-160c19fae6e5a49b.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-160c19fae6e5a49b.png\" style=\"zoom: 67%;\" \/>\n<h2 id=\"2\u79bb\u7fa4\u70b9\u76f8\u5173\">2\u3001\u79bb\u7fa4\u70b9\u76f8\u5173<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>p1 = ggplot(ToothGrowth, aes(x=dose, y=len)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot(outlier.color = <span style=\"color:#0ff;font-weight:bold\">&#34;red&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>               outlier.size = <span style=\"color:#ff0;font-weight:bold\">0.5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = ggplot(ToothGrowth, aes(x=dose, y=len)) + \n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot(outlier.alpha = <span style=\"color:#ff0;font-weight:bold\">0<\/span>)  <span style=\"color:#007f7f\">#\u900f\u660e\u5ea6\u4e3a0\uff0c\u76f8\u5f53\u4e8e\u4e0d\u7ed8\u5236\u79bb\u7fa4\u70b9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-584137fd5e864940.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-584137fd5e864940.png\" alt=\"\"  \/>\n<\/p>"},{"title":"R-\u53ef\u89c6\u5316-ggplot\u7ed8\u5236\u5e38\u89c4\u67f1\u72b6\u56febarplot","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/217-barplot\/","pubDate":"Sat, 05 Nov 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/217-barplot\/","description":"<h2 id=\"1\u793a\u4f8b\u6570\u636e\">1\u3001\u793a\u4f8b\u6570\u636e<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>library(carData) <span style=\"color:#007f7f\">#\u793a\u4f8b\u6570\u636e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(Salaries) <span style=\"color:#007f7f\">#\u6559\u804c\u5de5\u8d44\u60c5\u51b5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        rank discipline yrs.since.phd yrs.service  sex salary<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1      Prof          B            19          18 Male 139750<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2      Prof          B            20          16 Male 173200<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3  AsstProf          B             4           3 Male  79750<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4      Prof          B            45          39 Male 115000<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5      Prof          B            40          41 Male 141500<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 AssocProf          B             6           6 Male  97000<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>table(Salaries$rank, Salaries$sex)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#           Female Male<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># AsstProf      11   56<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># AssocProf     10   54<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Prof          18  248<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2\u57fa\u7840\u7528\u6cd5\">2\u3001\u57fa\u7840\u7528\u6cd5<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>p1 = ggplot(Salaries, aes(x=rank)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8d34\u8fd1x\u8f74<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = ggplot(Salaries, aes(x=rank)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar() + scale_y_continuous(expand=c(<span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>)) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6620\u5c04\u586b\u5145\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p3 =ggplot(Salaries, aes(x=rank, fill=rank)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar()\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2 + p3\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-67ebf8365f56dd39.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-67ebf8365f56dd39.png\" style=\"zoom: 50%;\" \/>\n<h2 id=\"3position\u53c2\u6570\u8c03\u6574\u5206\u7ec4\u5f62\u5f0f\">3\u3001<code>position=<\/code>\u53c2\u6570\u8c03\u6574\u5206\u7ec4\u5f62\u5f0f<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u9ed8\u8ba4<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 &lt;- ggplot(Salaries, aes(x=rank, fill=sex)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(position=<span style=\"color:#0ff;font-weight:bold\">&#34;stack&#34;<\/span>) + labs(title=<span style=\"color:#0ff;font-weight:bold\">&#39;position=&#34;stack&#34;&#39;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span>p2 &lt;- ggplot(Salaries, aes(x=rank, fill=sex)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(position=<span style=\"color:#0ff;font-weight:bold\">&#34;dodge&#34;<\/span>) + labs(title=<span style=\"color:#0ff;font-weight:bold\">&#39;position=&#34;dodge&#34;&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p3 &lt;- ggplot(Salaries, aes(x=rank, fill=sex)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(position=<span style=\"color:#0ff;font-weight:bold\">&#34;fill&#34;<\/span>) + labs(title=<span style=\"color:#0ff;font-weight:bold\">&#39;position=&#34;fill&#34;&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2 + p3 + plot_layout(guides = <span style=\"color:#0ff;font-weight:bold\">&#39;collect&#39;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-3c933e373420a2e0.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-3c933e373420a2e0.png\" style=\"zoom:50%;\" \/>\n<h2 id=\"4stat\u53c2\u6570\u8bbe\u7f6e\u9891\u6570\u7edf\u8ba1\u65b9\u5f0f\">4\u3001<code>stat=<\/code>\u53c2\u6570\u8bbe\u7f6e\u9891\u6570\u7edf\u8ba1\u65b9\u5f0f<\/h2>\n<ul>\n<li><code>stat=&quot;count&quot;<\/code>(default) \u8868\u793a\u4ece\u7ed9\u5b9a\u7684\u6570\u636e\u91cc\uff0c\u7edf\u8ba1\u6bcf\u4e2a\u7c7b\u522b\u51fa\u73b0\u7684\u6b21\u6570\uff1b\n<ul>\n<li>\u6b64\u65f6<code>aes()<\/code>\u53ea\u9700\u8981\u7ed9\u5b9a<code>x<\/code>\u53c2\u6570\u5373\u53ef\uff1b<\/li>\n<\/ul>\n<\/li>\n<li><code>stat=&quot;identity&quot;<\/code>\u8868\u793a\u76f4\u63a5\u6307\u5b9a\u6bcf\u79cd\u7c7b\u522b\u7684\u9891\u6570\uff1b\n<ul>\n<li>\u6b64\u65f6<code>aes()<\/code>\u9664\u4e86\u9700\u8981\u7ed9\u5b9a<code>x<\/code>\u53c2\u6570\u4ea4\u4ee3\u7c7b\u522b\uff0c\u8fd8\u9700\u8981\u6307\u5b9a<code>y<\/code>\u53c2\u6570\u8868\u793a\u9891\u6570\u503c\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>dat = Salaries %&gt;% group_by(rank) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::summarise(n=n()) %&gt;% as.data.frame()\n<\/span><\/span><span style=\"display:flex;\"><span>dat\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        rank   n<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  AsstProf  67<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 AssocProf  64<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3      Prof 266<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 = ggplot(dat, aes(x=rank, y=n, fill=rank)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat = <span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>dat = Salaries %&gt;% group_by(rank,sex) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::summarise(n=n()) %&gt;% as.data.frame()\n<\/span><\/span><span style=\"display:flex;\"><span>dat\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        rank    sex   n<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  AsstProf Female  11<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2  AsstProf   Male  56<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3 AssocProf Female  10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4 AssocProf   Male  54<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5      Prof Female  18<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6      Prof   Male 248<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = ggplot(dat, aes(x=rank, y=n, fill=sex)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat = <span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-1811f2c08d5d4f77.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-1811f2c08d5d4f77.png\" style=\"zoom:50%;\" \/>\n<h2 id=\"5geom_text\u6dfb\u52a0\u9891\u6570\u6ce8\u91ca\">5\u3001<code>geom_text()<\/code>\u6dfb\u52a0\u9891\u6570\u6ce8\u91ca<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>dat = Salaries %&gt;% group_by(rank) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::summarise(n=n())\n<\/span><\/span><span style=\"display:flex;\"><span>p1=ggplot(dat, aes(x=rank, y=n)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat=<span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_text(aes(label=n), vjust = <span style=\"color:#ff0;font-weight:bold\">-0.2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"color:#007f7f\"># vjust&lt;0,\u4e0a\u79fb\uff1bvjust&gt;0,\u4e0b\u79fb<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>dat = Salaries %&gt;% group_by(rank,sex) %&gt;% \n<\/span><\/span><span style=\"display:flex;\"><span>  dplyr::summarise(n=n())\n<\/span><\/span><span style=\"display:flex;\"><span>p2=ggplot(dat, aes(x=rank, y=n, fill=sex)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat=<span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>, position = <span style=\"color:#0ff;font-weight:bold\">&#34;dodge&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_text(aes(label=n), vjust = <span style=\"color:#ff0;font-weight:bold\">-0.2<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>            position=position_dodge(width=<span style=\"color:#ff0;font-weight:bold\">0.9<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-ad7f730796c5f32c.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-ad7f730796c5f32c.png\" style=\"zoom:50%;\" \/>\n<h2 id=\"6\u8c03\u6574\u67f1\u5b50\u7684\u987a\u5e8f\">6\u3001\u8c03\u6574\u67f1\u5b50\u7684\u987a\u5e8f<\/h2>\n<ul>\n<li>\u5982\u679c\u53ea\u6709\u4e00\u79cd\u5206\u7ec4\u65b9\u5f0f\uff0c\u901a\u8fc7\u8bbe\u7f6e\u7c7b\u522b\u7684\u56e0\u5b50\u6c34\u5e73\u5373\u53ef\u3002\n<ul>\n<li>\u6216\u8005\u4f7f\u7528<code>scale_x_discrete(c(.....))<\/code>\u81ea\u5b9a\u4e49\u987a\u5e8f\u4e5f\u53ef\u4ee5\u5b9e\u73b0\u5f88\u65b9\u4fbf\u7684\u4fee\u6539<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ggplot(Salaries, aes(x=rank)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar() +\n<\/span><\/span><span style=\"display:flex;\"><span>  scale_x_discrete(limits=c(<span style=\"color:#0ff;font-weight:bold\">&#34;AsstProf&#34;<\/span>,  <span style=\"color:#0ff;font-weight:bold\">&#34;AssocProf&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;Prof&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1=ggplot(iris, aes(x=Species, y=Sepal.Width)) +\n<\/span><\/span><span style=\"display:flex;\"><span>    geom_boxplot() +\n<\/span><\/span><span style=\"display:flex;\"><span>    ggtitle(<span style=\"color:#0ff;font-weight:bold\">&#34;default factor levels&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p2=ggplot(iris, aes(x=fct_reorder(Species, Sepal.Width), y=Sepal.Width)) +\n<\/span><\/span><span style=\"display:flex;\"><span>    geom_boxplot() +\n<\/span><\/span><span style=\"display:flex;\"><span>    ggtitle(<span style=\"color:#0ff;font-weight:bold\">&#34;fct_reorder default levels&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p3=ggplot(iris, aes(x=fct_reorder(Species, Sepal.Width, .desc=<span style=\"color:#fff;font-weight:bold\">T<\/span>), y=Sepal.Width)) +\n<\/span><\/span><span style=\"display:flex;\"><span>    geom_boxplot() +\n<\/span><\/span><span style=\"display:flex;\"><span>    ggtitle(<span style=\"color:#0ff;font-weight:bold\">&#34;fct_reorder descent levels&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>p1 | p2 | p3\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u4f46\u5982\u679c\u66f4\u590d\u6742\u7684\u60c5\u51b5&ndash;\u7ec4\u5185\u6392\u5e8f\u3002\n<ul>\n<li>\u4f8b\uff1a5\u4e2a\u5b66\u751f\u7684\u4e09\u95e8\u8bfe\u7a0b\u6210\u7ee9\uff0c\u6309\u7167\u6bcf\u95e8\u5b66\u79d1\u5206\u7ec4\uff0c\u5c065\u4e2a\u5b66\u751f\u6309\u7167\u6210\u7ee9\u4ece\u4f4e\u5230\u9ad8\u6392\u5e8f(\u6216\u8005\u4ece\u9ad8\u5230\u4f4e\u6392\u5e8f)\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>grade = data.frame(\n<\/span><\/span><span style=\"display:flex;\"><span>  subject=rep(c(<span style=\"color:#0ff;font-weight:bold\">&#34;Chineses&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;Math&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;English&#34;<\/span>), each=<span style=\"color:#ff0;font-weight:bold\">5<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>  name=rep(c(<span style=\"color:#0ff;font-weight:bold\">&#34;A&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;B&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;C&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;D&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;E&#34;<\/span>),<span style=\"color:#ff0;font-weight:bold\">3<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>  score=c(<span style=\"color:#ff0;font-weight:bold\">79<\/span>,<span style=\"color:#ff0;font-weight:bold\">65<\/span>,<span style=\"color:#ff0;font-weight:bold\">70<\/span>,<span style=\"color:#ff0;font-weight:bold\">94<\/span>,<span style=\"color:#ff0;font-weight:bold\">82<\/span>,<span style=\"color:#ff0;font-weight:bold\">76<\/span>,<span style=\"color:#ff0;font-weight:bold\">87<\/span>,<span style=\"color:#ff0;font-weight:bold\">80<\/span>,<span style=\"color:#ff0;font-weight:bold\">81<\/span>,<span style=\"color:#ff0;font-weight:bold\">89<\/span>,<span style=\"color:#ff0;font-weight:bold\">88<\/span>,<span style=\"color:#ff0;font-weight:bold\">79<\/span>,<span style=\"color:#ff0;font-weight:bold\">82<\/span>,<span style=\"color:#ff0;font-weight:bold\">95<\/span>,<span style=\"color:#ff0;font-weight:bold\">90<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5148\u6309\u5b66\u79d1\u5747\u5206\u4ece\u9ad8\u5230\u4f4e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u7136\u540e\u6bcf\u4e2a\u5b66\u79d1\u5185,\u6210\u7ee9\u4ece\u4f4e\u5230\u9ad8\u5b66\u751f\u6392\u5e8f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>grade$subject=fct_reorder(grade$subject, grade$score, .desc=<span style=\"color:#fff;font-weight:bold\">T<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidytext)\n<\/span><\/span><span style=\"display:flex;\"><span>p1 = ggplot(grade, aes(x=reorder_within(name,score,subject), y=score, fill=name)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat = <span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  scale_x_reordered() +\n<\/span><\/span><span style=\"display:flex;\"><span>  facet_wrap(subject~. ,scales = <span style=\"color:#0ff;font-weight:bold\">&#34;free_x&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5148\u6309\u5b66\u79d1\u5747\u5206\u4ece\u4f4e\u5230\u9ad8<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u7136\u540e\u6bcf\u4e2a\u5b66\u79d1\u5185,\u6210\u7ee9\u4ece\u9ad8\u5230\u4f4e\u5b66\u751f\u6392\u5e8f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>grade$subject=fct_reorder(grade$subject, grade$score, .desc=<span style=\"color:#fff;font-weight:bold\">F<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidytext)\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = ggplot(grade, aes(x=reorder_within(name,-score,subject), y=score, fill=name)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(stat = <span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  scale_x_reordered() +\n<\/span><\/span><span style=\"display:flex;\"><span>  facet_wrap(subject~. ,scales = <span style=\"color:#0ff;font-weight:bold\">&#34;free_x&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 + p2 + plot_layout(guides = <span style=\"color:#0ff;font-weight:bold\">&#39;collect&#39;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u6ce8\u610f<code>reorder_within(\u4e2a\u4f53,\u503c,\u5206\u7ec4)<\/code>\uff0c\u8fd8\u9700\u8981\u8bbe\u7f6e<code>scale_x_reordered() , facet_wrap(variable~. ,scales = &quot;free_x&quot;)<\/code><\/p>"},{"title":"R-\u53ef\u89c6\u5316-\u7ed8\u56fe\u989c\u8272\u4e0e\u753b\u677f\u7684\u9009\u62e9","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/218-color-palette\/","pubDate":"Sat, 05 Nov 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/218-color-palette\/","description":"<h2 id=\"1r\u4e2d\u989c\u8272\u7684\u8868\u793a\u65b9\u5f0f\">1\u3001R\u4e2d\u989c\u8272\u7684\u8868\u793a\u65b9\u5f0f<\/h2>\n<h3 id=\"11--\u989c\u8272\u7684\u540d\u5b57\">1.1  \u989c\u8272\u7684\u540d\u5b57<\/h3>\n<ul>\n<li>\n<p>R\u5185\u7f6e\u4e86657\u79cd\u989c\u8272\u7684\u540d\u5b57\u53ef\u4f9b\u8c03\u7528<\/p>\n<p><a href=\"http:\/\/www.stat.columbia.edu\/~tzheng\/files\/Rcolor.pdf\">http:\/\/www.stat.columbia.edu\/~tzheng\/files\/Rcolor.pdf<\/a><\/p>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>str(colors())\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># chr [1:657] &#34;white&#34; &#34;aliceblue&#34; &#34;antiquewhite&#34; ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(colors()[1:<span style=\"color:#ff0;font-weight:bold\">10<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] &#34;white&#34;         &#34;aliceblue&#34;     &#34;antiquewhite&#34; <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [4] &#34;antiquewhite1&#34; &#34;antiquewhite2&#34; &#34;antiquewhite3&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">111<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>cols = sample(colors(), <span style=\"color:#ff0;font-weight:bold\">5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>numbers = <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">5<\/span>; names(numbers) = cols\n<\/span><\/span><span style=\"display:flex;\"><span>barplot(numbers, col=cols)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-3d4495bcbec94b10.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-3d4495bcbec94b10.png\" style=\"zoom:50%;\" \/>\n<blockquote>\n<p>\u5173\u4e8e\u900f\u660e\u8272\uff0c\u867d\u7136\u4e0d\u5728\u8fd9657\u4e2a\u989c\u8272\u5f53\u4e2d\uff0c\u53ef\u4ee5\u901a\u8fc7<code>transparent<\/code>\u6307\u5b9a\u3002<\/p>"},{"title":"\u53ef\u89c6\u5316-R--\u70ed\u56feheatmap","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/219-heatmap\/","pubDate":"Sun, 12 Jun 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/219-heatmap\/","description":"<blockquote>\n<p>\u7b80\u5355\u6574\u7406\u4e24\u4e2a\u7ed8\u5236\u70ed\u56feR\u5305\u7684\u7528\u6cd5\uff0c\u5206\u522b\u662f\u57fa\u7840\u7684<code>pheatmap<\/code>\u5305\u4e0e\u590d\u6742\u7684<code>ComplexHeatmap<\/code>\u5305\u3002<\/p><\/blockquote>\n<h1 id=\"pheatmap\">pheatmap<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#34;pheatmap&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(pheatmap)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>packageVersion(<span style=\"color:#0ff;font-weight:bold\">&#34;pheatmap&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] \u20181.0.12\u2019<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"0-\u793a\u4f8b\u6570\u636e\">0\u3001 \u793a\u4f8b\u6570\u636e<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>exp = matrix(rnorm(<span style=\"color:#ff0;font-weight:bold\">300<\/span>), nrow = <span style=\"color:#ff0;font-weight:bold\">30<\/span>, ncol = <span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">123<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>exp[1:<span style=\"color:#ff0;font-weight:bold\">15<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">5<\/span>] = exp[1:<span style=\"color:#ff0;font-weight:bold\">15<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">5<\/span>] + matrix(rnorm(<span style=\"color:#ff0;font-weight:bold\">75<\/span>,mean = <span style=\"color:#ff0;font-weight:bold\">4<\/span>), nrow = <span style=\"color:#ff0;font-weight:bold\">15<\/span>, ncol = <span style=\"color:#ff0;font-weight:bold\">5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">123<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>exp[16:<span style=\"color:#ff0;font-weight:bold\">30<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>] = exp[16:<span style=\"color:#ff0;font-weight:bold\">30<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>] + matrix(rnorm(<span style=\"color:#ff0;font-weight:bold\">75<\/span>,mean = <span style=\"color:#ff0;font-weight:bold\">3<\/span>), nrow = <span style=\"color:#ff0;font-weight:bold\">15<\/span>, ncol = <span style=\"color:#ff0;font-weight:bold\">5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>exp = round(exp, <span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>colnames(exp) = paste(<span style=\"color:#0ff;font-weight:bold\">&#34;Sample&#34;<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">10<\/span>, sep = <span style=\"color:#0ff;font-weight:bold\">&#34;&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>rownames(exp) = paste(<span style=\"color:#0ff;font-weight:bold\">&#34;Gene&#34;<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">30<\/span>, sep = <span style=\"color:#0ff;font-weight:bold\">&#34;&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(exp)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 30 10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>head(exp)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#       Sample1 Sample2 Sample3 Sample4 Sample5 Sample6 Sample7 Sample8 Sample9 Sample10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene1    4.47    5.74    5.56    3.18    6.38    0.06   -0.09    0.13    0.70    -1.75<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene2    3.49    3.71    2.24    4.23    4.10   -0.70    1.08    0.22   -0.11     0.10<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene3    4.34    0.37    5.64    3.05    2.42   -0.72    0.63    1.64   -1.26    -0.57<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene4    4.25    4.32    6.79    5.30    2.37    0.88   -0.11   -0.22    1.68    -0.97<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene5    3.99    4.45    3.38    4.29    1.74   -1.02   -1.53    0.17    0.91    -0.18<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene6    5.72    2.36    5.39    4.04    6.50    1.96   -0.52    1.17    0.24     1.01<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u57fa\u7840\u7ed8\u56fe<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>pheatmap(exp)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220612134929311.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20220612134929311.png\" alt=\"image-20220612134929311\" style=\"zoom:67%;\" \/>\n<h2 id=\"1\u805a\u7c7b\u76f8\u5173\u53c2\u6570\">1\u3001\u805a\u7c7b\u76f8\u5173\u53c2\u6570<\/h2>\n<ul>\n<li>\u4e0b\u8ff0\u5747\u662f\u9488\u5bf9\u884c<code>row<\/code>\u7684\u64cd\u4f5c\uff0c\u6539\u4e3a<code>col<\/code>\u5373\u4e3a\u9488\u5bf9\u5217\u7684\u64cd\u4f5c\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (1) \u4e0d\u805a\u7c7b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>pheatmap(exp, cluster_row = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (2) \u805a\u7c7b\u4f46\u663e\u793a\u805a\u7c7b\u6811<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>pheatmap(exp, treeheight_row = <span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (3) \u8ddd\u79bb\u8ba1\u7b97\u516c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>clustering_distance_rows = <span style=\"color:#0ff;font-weight:bold\">&#34;euclidean&#34;<\/span> <span style=\"color:#007f7f\"># &#34;correlation&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (4) \u805a\u7c7b\u95f4\u8ddd\u79bb\u8ba1\u7b97\u65b9\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>clustering_method = <span style=\"color:#0ff;font-weight:bold\">&#34;average&#34;<\/span> <span style=\"color:#007f7f\">#&#34;ward.D2&#34;, &#34;single&#34;, &#34;complete&#34;\u7b49<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## (5) \u83b7\u53d6\u805a\u7c7b\u540e\u70ed\u56fe\u7684\u8868\u8fbe\u77e9\u9635(\u6539\u53d8\u4e86\u884c\u5217\u987a\u5e8f)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>ph = pheatmap(exp)\n<\/span><\/span><span style=\"display:flex;\"><span>ph$tree_row$order\n<\/span><\/span><span style=\"display:flex;\"><span>ph$tree_col$order\n<\/span><\/span><span style=\"display:flex;\"><span>ph_exp = exp[ph$tree_row$order, ph$tree_col$order]\n<\/span><\/span><span style=\"display:flex;\"><span>ph_exp[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#        Sample3 Sample5 Sample2 Sample1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene26    1.05   -0.57    1.44   -0.71<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene19   -1.01   -0.52   -0.26   -0.63<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene24    0.98   -1.24   -0.96   -0.24<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Gene18    0.33    1.23   -0.49    0.24<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2\u989c\u8272\u76f8\u5173\">2\u3001\u989c\u8272\u76f8\u5173<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#Default<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>colours = colorRampPalette(rev(RColorBrewer::brewer.pal(n = <span style=\"color:#ff0;font-weight:bold\">7<\/span>, name = <span style=\"color:#0ff;font-weight:bold\">&#34;RdYlBu&#34;<\/span>)))(<span style=\"color:#ff0;font-weight:bold\">100<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>str(colours)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># chr [1:100] &#34;#4575B4&#34; &#34;#4979B6&#34; &#34;#4E7DB8&#34; &#34;#5282BB&#34; &#34;#5786BD&#34; &#34;#5C8BBF&#34; &#34;#608FC2&#34; ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u4e2a\u6027\u5316\u4fee\u6539<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>colours = colorRampPalette(c(<span style=\"color:#0ff;font-weight:bold\">&#34;navy&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;white&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;firebrick3&#34;<\/span>))(<span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#colours = colorRampPalette(c(&#34;#3288bd&#34;, &#34;white&#34;, &#34;#d53e4f&#34;))(10)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>str(colours)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># chr [1:10] &#34;#3288BD&#34; &#34;#5FA2CB&#34; &#34;#8DBCDA&#34; &#34;#BAD7E9&#34; &#34;#E8F1F7&#34; &#34;#FAE9EB&#34; &#34;#F1BEC4&#34; ...<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>pheatmap(exp, color = colours)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220612135430912.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20220612135430912.png\" alt=\"image-20220612135430912\"  \/>\n<\/p>"},{"title":"R-\u53ef\u89c6\u5316--\u5f26\u56fechordDiagram","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/220-chord\/","pubDate":"Mon, 16 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/220-chord\/","description":"<p>\u5f26\u56fe\u5e38\u7528\u4e8e\u8868\u793a\u4e24\u7ec4\u6216\u591a\u7ec4\u6210\u5458\u4e4b\u95f4\u7684\u8fde\u63a5\u5173\u7cfb\u3002\u5982\u4e0b\u7b80\u5355\u5b66\u4e60<code>circlize<\/code>\u5305<code>ChordDiagram()<\/code>\u7ed8\u5236\u5f26\u56fe\u7684\u57fa\u7840\u7528\u6cd5<\/p>\n<ul>\n<li>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/jokergoo.github.io\/circlize_book\/book\/the-chorddiagram-function.html<\/li>\n<\/ul>\n<h2 id=\"0\u6570\u636e\u8f93\u5165\">0\u3001\u6570\u636e\u8f93\u5165<\/h2>\n<p>\u5bf9\u4e8ematrix\uff1a<\/p>"},{"title":"R-\u53ef\u89c6\u5316--\u6851\u57fa(sankey)\u4e0e\u51b2\u51fb(alluvial)\u56feggsankey","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/221-sankey\/","pubDate":"Mon, 16 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/221-sankey\/","description":"<blockquote>\n<p>\u6851\u57fa\u56fe(sankey plot)\u662f\u4e00\u79cd\u7279\u5b9a\u7c7b\u578b\u7684\u6d41\u56fe\uff0c\u7528\u4e8e\u63cf\u8ff0\u4e00\u7ec4\u503c\u5230\u53e6\u4e00\u7ec4\u503c\u7684\u6d41\u5411\uff1b\u7406\u8bba\u4e0a\u6765\u8868\u793a\u524d\u4e00\u7ec4\u503c\u4e0e\u540e\u4e00\u7ec4\u503c\u5b58\u5728\u4e00\u5b9a\u7684\u903b\u8f91\u5173\u7cfb\u3002\u4ece\u6cdb\u5316\u89d2\u5ea6\u6765\u770b\uff0c\u4e5f\u53ef\u7528\u4e8e\u5448\u73b0\u591a\u7ec4\u95f4\u7684\u6784\u6210\u6bd4\u4f8b\u5173\u7cfb\u3002\u4ece\u8fd9\u4e2a\u89d2\u5ea6\u6765\u770b\uff0c\u51b2\u79ef\u56fe(alluvial plot)\u5c31\u662f\u4e00\u79cd\u7279\u6b8a\u7684\u6851\u57fa\u56fe\u3002<\/p>"},{"title":"R-\u53ef\u89c6\u5316--\u997c\u56fe\u4e0e\u73af\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/222-pie-donut\/","pubDate":"Sat, 11 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/222-pie-donut\/","description":"<h2 id=\"1pie\">1\u3001pie()<\/h2>\n<p><code>pie()<\/code>\u662f\u57fa\u7840\u7684\u7ed8\u5236\u997c\u56fe\u51fd\u6570\uff0c\u7528\u6cd5\u7b80\u5355<\/p>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>pie(Prop, labels = <span style=\"color:#fff;font-weight:bold\">LETTERS<\/span>[1:<span style=\"color:#ff0;font-weight:bold\">5<\/span>], main = <span style=\"color:#0ff;font-weight:bold\">&#34;Test Piechart&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># labels\uff1a\u8bbe\u7f6e\u6807\u7b7e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># radius\uff1a\u8bbe\u7f6e\u534a\u5f84\uff0cdefault 0.8<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># clockwise\uff1a\u8bbe\u7f6e\u662f\u5426\u987a\u65f6\u9488\uff0c\u9ed8\u8ba4\u4e3aF<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># init.angle\uff1a\u8bbe\u7f6e\u8d77\u59cb\u5355\u5143\u7684\u89d2\u5ea6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># col\uff1a\u8bbe\u7f6e\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># border\u4e0elty\u5206\u522b\u8bbe\u7f6e\u8fb9\u7684\u989c\u8272\u4e0e\u5f62\u72b6<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230311161634571.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230311161634571.png\" alt=\"image-20230311161634571\"  \/>\n<\/p>"},{"title":"R-\u53ef\u89c6\u5316--ggplot\u6807\u6ce8\u6587\u672c\u6807\u7b7etext&label","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/223-ggplot-labels\/","pubDate":"Sat, 11 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/223-ggplot-labels\/","description":"<h2 id=\"1ggplot\">1\u3001ggplot<\/h2>\n<ul>\n<li><code>geom_text()<\/code>\u901a\u8fc7\u4ea4\u4ee3\u6587\u672c\u7684\u5750\u6807\u4f4d\u7f6e\u4e0e\u5185\u5bb9\u7ed8\u5236\uff0c\u901a\u5e38\u4e0e\u70b9\u56fe\u8054\u7528\u3002\u76f8\u5173\u53c2\u6570\u5305\u62ec\uff1a\n<ul>\n<li>color \u6807\u7b7e\u7684\u989c\u8272<\/li>\n<li>alpha \u6807\u7b7e\u7684\u900f\u660e\u5ea6<\/li>\n<li>check_overlap \u82e5\u6709\u91cd\u53e0\u7684\u6807\u7b7e\u5219\u4e0d\u663e\u793a\uff0c\u9ed8\u8ba4\u4e3aFalse<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p = ggplot(mpg, aes(displ, hwy)) + geom_point()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8bbe\u7f6e\u5019\u9009\u6807\u7b7e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>best_in_class &lt;- mpg %&gt;%\n<\/span><\/span><span style=\"display:flex;\"><span>  group_by(class) %&gt;%\n<\/span><\/span><span style=\"display:flex;\"><span>  filter(row_number(desc(hwy)) == <span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># nudge_x \/ nudge_y\uff1a\u8bbe\u7f6e\u6807\u7b7e\u7684\u76f8\u5bf9\u4f4d\u7f6e\uff0c\u79fb\u52a8\u5355\u4f4d\u4e0ex\/y\u8f74\u5339\u914d\uff1b\u5927\u4e8e0\u5206\u522b\u8868\u793a\u53f3\u3001\u4e0a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># hjust \/ vjust\uff1a\u8bbe\u7f6e\u6807\u7b7e\u7684\u76f8\u5bf9\u4f4d\u7f6e\uff0c\u79fb\u52a8\u5355\u4f4d\u4e0e\u81ea\u8eab\u957f\u5bbd\u5339\u914d\uff1b\u5c0f\u4e8e0\u5206\u522b\u8868\u793a\u53f3\uff0c\u4e0a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 = p + geom_text(aes(label = model), data = best_in_class)\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = p + geom_text(aes(label = model), data = best_in_class,\n<\/span><\/span><span style=\"display:flex;\"><span>                   nudge_x = <span style=\"color:#ff0;font-weight:bold\">1<\/span>, nudge_y = <span style=\"color:#ff0;font-weight:bold\">10<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p1 | p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230311204246511.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230311204246511.png\" alt=\"image-20230311204246511\" style=\"zoom: 67%;\" \/>\n<ul>\n<li><code>geom_label()<\/code>\u5728\u4e0a\u8ff0\u7684\u57fa\u7840\u4e0a\u8bbe\u7f6e\u6587\u672c\u6846\uff0c\u76f8\u5173\u53c2\u6570\u5305\u62ec\uff1a\n<ul>\n<li>label.size\uff1a\u6846\u8f6e\u5ed3\u7ebf\u7684\u5bbd\u5ea6<\/li>\n<li>label.r\uff1a\u6846\u8f6e\u5ed3\u7684\u5e73\u6ed1\u5ea6<\/li>\n<li>label.padding\uff1a\u6846\u7684\u5927\u5c0f<\/li>\n<li>alpha\uff1a\u6846\u7684\u900f\u660e\u5ea6<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>p1 = p + geom_label(aes(label = model), data = best_in_class)\n<\/span><\/span><span style=\"display:flex;\"><span>p2 = p + geom_label(aes(label = model), data = best_in_class,\n<\/span><\/span><span style=\"display:flex;\"><span>                    alpha=<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>, fill=<span style=\"color:#0ff;font-weight:bold\">&#34;grey&#34;<\/span>, color=<span style=\"color:#0ff;font-weight:bold\">&#34;red&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p1 | p2\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230311205024367.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230311205024367.png\" alt=\"image-20230311205024367\" style=\"zoom: 67%;\" \/>\n<h2 id=\"2ggrepel\">2\u3001ggrepel<\/h2>\n<p>\u4e0a\u8ff0\u51fd\u6570\u5bf9\u4e8e\u91cd\u53e0\u6807\u7b7e\u7684\u5904\u7406\u80fd\u529b\u6709\u9650\uff0cggrepel\u5305\u53ef\u5bf9\u6b64\u8fdb\u884c\u6709\u6548\u7684\u8865\u5145\u3002\u7b80\u5355\u7406\u89e3\u5c31\u662f\u786e\u5b9a\u6587\u672c\u6807\u7b7e\u7684\u5750\u6807\u540e\uff0c\u5bf9\u4e8e\u5b58\u5728\u4e92\u76f8\u91cd\u53e0\u7684\u6807\u7b7e\u8fdb\u884c\u9002\u5f53\u504f\u79fb\uff0c\u4f7f\u5404\u81ea\u5747\u80fd\u5b8c\u6574\u7684\u663e\u793a\u3002<\/p>"},{"title":"R-\u53ef\u89c6\u5316--corrplot\u76f8\u5173\u6027\u7ed8\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/224-corrplot\/","pubDate":"Sat, 01 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/224-corrplot\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#34;corrplot&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(corrplot)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8ba1\u7b97\u76f8\u5173\u6027\u77e9\u9635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>M&lt;-cor(mtcars)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(M)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 11 11<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1\u53ef\u89c6\u5316r\u7cfb\u6570\u65b9\u5f0f\">1\u3001\u53ef\u89c6\u5316R\u7cfb\u6570\u65b9\u5f0f<\/h3>\n<ul>\n<li>method\u53c2\u6570\u63d0\u4f9b\u4e86\u5982\u4e0b6\u79cd\u53ef\u89c6\u5316\u65b9\u5f0f<\/li>\n<li>circle(default), square, ellipse, number, shade, color, pie<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, method=<span style=\"color:#0ff;font-weight:bold\">&#34;ellipse&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401114538351.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401114538351.png\" alt=\"image-20230401114538351\" style=\"zoom: 50%;\" \/>\n<h3 id=\"2\u5bf9\u79f0\u5e03\u5c40\u65b9\u5f0f\">2\u3001\u5bf9\u79f0\u5e03\u5c40\u65b9\u5f0f<\/h3>\n<ul>\n<li>type\u53c2\u6570\u63d0\u4f9b\u4e86\u5982\u4e0b3\u79cd\u5e03\u5c40\u65b9\u5f0f<\/li>\n<li>full(default), upper, lower<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, type=<span style=\"color:#0ff;font-weight:bold\">&#34;lower&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401114629730.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401114629730.png\" alt=\"image-20230401114629730\" style=\"zoom:50%;\" \/>\n<h3 id=\"3\u6837\u672c\u6392\u5e8f\">3\u3001\u6837\u672c\u6392\u5e8f<\/h3>\n<ul>\n<li>order\u53c2\u6570\u63d0\u4f9b\u4e86\u5982\u4e0b<\/li>\n<li>original(default), AOE, FPC, hclust, alphabet<\/li>\n<li>\u5982\u679c\u91c7\u7528hclust\uff0c\u53ef\u4ee5\u901a\u8fc7hclust.method\u53c2\u6570\u8bbe\u7f6e\u805a\u7c7b\u65b9\u6cd5<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, order=<span style=\"color:#0ff;font-weight:bold\">&#34;hclust&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401114956459.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401114956459.png\" alt=\"image-20230401114956459\" style=\"zoom:50%;\" \/>\n<h3 id=\"4\u989c\u8272\u65b9\u6848\">4\u3001\u989c\u8272\u65b9\u6848<\/h3>\n<ul>\n<li>\uff081\uff09\u76f8\u5173\u6027\u989c\u8272<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>col = colorRampPalette(c(<span style=\"color:#0ff;font-weight:bold\">&#34;blue&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;white&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;red&#34;<\/span>))(<span style=\"color:#ff0;font-weight:bold\">20<\/span>) <span style=\"color:#007f7f\"># \u8fde\u7eed\u578b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>col = RColorBrewer::brewer.pal(n=<span style=\"color:#ff0;font-weight:bold\">8<\/span>, name=<span style=\"color:#0ff;font-weight:bold\">&#34;RdBu&#34;<\/span>) <span style=\"color:#007f7f\">#\u79bb\u6563\u578b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>corrplot(M, col=col)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\uff082\uff09\u5176\u5b83\u989c\u8272<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u80cc\u666f\u586b\u5145\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>corrplot(M, bg=<span style=\"color:#0ff;font-weight:bold\">&#34;grey&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u65b9\u683c\u8fb9\u6846\u989c\u8272<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>corrplot(M, addgrid.col = <span style=\"color:#0ff;font-weight:bold\">&#34;black&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"5\u6587\u672c\u5c5e\u6027\u8bbe\u7f6e\">5\u3001\u6587\u672c\u5c5e\u6027\u8bbe\u7f6e<\/h3>\n<ul>\n<li>\uff081\uff09\u5750\u6807\u8f74\u540d\uff1a\u901a\u8fc7<code>tl.<\/code>\u7cfb\u5217\u53c2\u6570\u8bbe\u7f6e\u5927\u5c0f\uff0c\u989c\u8272\u3001\u89d2\u5ea6\u7b49<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, tl.col=<span style=\"color:#0ff;font-weight:bold\">&#34;black&#34;<\/span>, tl.srt=<span style=\"color:#ff0;font-weight:bold\">45<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\uff082\uff09\u6807\u6ce8\u76f8\u5173\u6027\u7cfb\u6570<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, addCoef.col = <span style=\"color:#0ff;font-weight:bold\">&#34;black&#34;<\/span>, number.digits = <span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401115659231.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401115659231.png\" alt=\"image-20230401115659231\" style=\"zoom:50%;\" \/>\n<ul>\n<li>\uff083\uff09\u6807\u6ce8P\u503c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u9996\u5148\u5f97\u5230P\u503c\u77e9\u9635<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>cor.mtest &lt;- <span style=\"color:#fff;font-weight:bold\">function<\/span>(mat, <span style=\"color:#fff;font-weight:bold\">...<\/span>) {\n<\/span><\/span><span style=\"display:flex;\"><span>    mat &lt;- as.matrix(mat)\n<\/span><\/span><span style=\"display:flex;\"><span>    n &lt;- ncol(mat)\n<\/span><\/span><span style=\"display:flex;\"><span>    p.mat&lt;- matrix(<span style=\"color:#fff;font-weight:bold\">NA<\/span>, n, n)\n<\/span><\/span><span style=\"display:flex;\"><span>    diag(p.mat) &lt;- <span style=\"color:#ff0;font-weight:bold\">0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">for<\/span> (i <span style=\"color:#fff;font-weight:bold\">in<\/span> <span style=\"color:#ff0;font-weight:bold\">1<\/span>:(n - <span style=\"color:#ff0;font-weight:bold\">1<\/span>)) {\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">for<\/span> (j <span style=\"color:#fff;font-weight:bold\">in<\/span> (i + <span style=\"color:#ff0;font-weight:bold\">1<\/span>):n) {\n<\/span><\/span><span style=\"display:flex;\"><span>            tmp &lt;- cor.test(mat[, i], mat[, j], <span style=\"color:#fff;font-weight:bold\">...<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>            p.mat[i, j] &lt;- p.mat[j, i] &lt;- tmp$p.value\n<\/span><\/span><span style=\"display:flex;\"><span>        }\n<\/span><\/span><span style=\"display:flex;\"><span>    }\n<\/span><\/span><span style=\"display:flex;\"><span>  colnames(p.mat) &lt;- rownames(p.mat) &lt;- colnames(mat)\n<\/span><\/span><span style=\"display:flex;\"><span>  p.mat\n<\/span><\/span><span style=\"display:flex;\"><span>}\n<\/span><\/span><span style=\"display:flex;\"><span>p.mat &lt;- cor.mtest(mtcars)\n<\/span><\/span><span style=\"display:flex;\"><span>dim(p.mat)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 11 11<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>sig.level \u53c2\u6570\u8bbe\u7f6e\u663e\u8457\u9608\u503c<\/li>\n<li>insig\u53c2\u6570\u8bbe\u7f6e\u6807\u6ce8\u65b9\u5f0f\uff0c\u53ef\u9009\u9879\u5305\u62ec\n<ul>\n<li>pch\uff08default\uff09\uff1a\u5c06\u4e0d\u663e\u8457\u7684\uff0c\u6807\u6ce8\u4e3a\u53c9<\/li>\n<li>blank\uff1a\u5c06\u4e0d\u663e\u8457\u7684\uff0c\u4e0d\u663e\u793a<\/li>\n<li>n\uff1a\u4e0d\u4f5c\u5904\u7406<\/li>\n<li>label_sig \u5c06\u663e\u8457\u7684\uff0c\u6807\u6ce8\u661f\u53f7<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, p.mat = p.mat, sig.level = <span style=\"color:#ff0;font-weight:bold\">0.01<\/span>, insig = <span style=\"color:#0ff;font-weight:bold\">&#34;blank&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401145554687.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401145554687.png\" alt=\"image-20230401145554687\" style=\"zoom:50%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, p.mat = p.mat, sig.level = c(<span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.01<\/span>), \n<\/span><\/span><span style=\"display:flex;\"><span>\tinsig = <span style=\"color:#0ff;font-weight:bold\">&#34;label_sig&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>\tpch.cex = <span style=\"color:#ff0;font-weight:bold\">1.5<\/span>, pch.col = <span style=\"color:#0ff;font-weight:bold\">&#34;red&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401145726873.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401145726873.png\" alt=\"image-20230401145726873\" style=\"zoom: 50%;\" \/>\n<h3 id=\"6\u5176\u5b83\u53c2\u6570\">6\u3001\u5176\u5b83\u53c2\u6570<\/h3>\n<ul>\n<li>is.corr\u53c2\u6570\uff0c \u9ed8\u8ba4\u4e3aTRUE\uff1b\u5373\u8f93\u5165\u77e9\u9635\u662f\u5426\u4e3a\u76f8\u5173\u6027\u77e9\u9635<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(scale(t(mtcars)), is.corr = <span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401150411920.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401150411920.png\" alt=\"image-20230401150411920\" style=\"zoom:50%;\" \/>\n<ul>\n<li>diag\u53c2\u6570\uff0c\u9ed8\u8ba4\u4e3aTRUE\uff1b\u5373\u662f\u5426\u663e\u793a\u5bf9\u89d2\u7ebf\u7684\u76f8\u5173\u6027<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>corrplot(M, diag=<span style=\"color:#fff;font-weight:bold\">FALSE<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230401150618944.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230401150618944.png\" alt=\"image-20230401150618944\" style=\"zoom:50%;\" \/>"},{"title":"R-\u53ef\u89c6\u5316--ggplot\u7ed8\u5236\u6563\u70b9\u56fe\u6dfb\u52a0\u8fb9\u9645\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/225-ggplot-marginal\/","pubDate":"Sun, 09 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/225-ggplot-marginal\/","description":"<ul>\n<li>\u793a\u4f8b\u6570\u636e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>data(<span style=\"color:#0ff;font-weight:bold\">&#34;mtcars&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>df &lt;- mtcars\n<\/span><\/span><span style=\"display:flex;\"><span>df$name &lt;- rownames(df)\n<\/span><\/span><span style=\"display:flex;\"><span>df$cyl &lt;- as.factor(df$cyl)\n<\/span><\/span><span style=\"display:flex;\"><span>head(df[,c(<span style=\"color:#0ff;font-weight:bold\">&#34;name&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;cyl&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;mpg&#34;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#34;wt&#34;<\/span>)])\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                                name cyl  mpg    wt<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Mazda RX4                 Mazda RX4   6 21.0 2.620<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Mazda RX4 Wag         Mazda RX4 Wag   6 21.0 2.875<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Datsun 710               Datsun 710   4 22.8 2.320<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Hornet 4 Drive       Hornet 4 Drive   6 21.4 3.215<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Hornet Sportabout Hornet Sportabout   8 18.7 3.440<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Valiant                     Valiant   6 18.1 3.460<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"\u65b9\u5f0f1-cowplot\">\u65b9\u5f0f1: cowplot<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(cowplot) \n<\/span><\/span><span style=\"display:flex;\"><span>p_main = ggplot(df, aes(x = wt, y = mpg, color = cyl))+\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_point()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p_right = axis_canvas(p_main, axis = <span style=\"color:#0ff;font-weight:bold\">&#34;x&#34;<\/span>)+\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_density(data = df, aes(x = wt, fill = cyl),\n<\/span><\/span><span style=\"display:flex;\"><span>              alpha = <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, size = <span style=\"color:#ff0;font-weight:bold\">0.2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p_top = axis_canvas(p_main, axis = <span style=\"color:#0ff;font-weight:bold\">&#34;y&#34;<\/span>, coord_flip = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>)+\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_density(data = df, aes(x = mpg, fill = cyl),\n<\/span><\/span><span style=\"display:flex;\"><span>                alpha = <span style=\"color:#ff0;font-weight:bold\">0.7<\/span>, size = <span style=\"color:#ff0;font-weight:bold\">0.2<\/span>)+\n<\/span><\/span><span style=\"display:flex;\"><span>  coord_flip()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p1 = insert_xaxis_grob(p_main, p_right, grid::unit(<span style=\"color:#ff0;font-weight:bold\">.2<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;null&#34;<\/span>), position = <span style=\"color:#0ff;font-weight:bold\">&#34;top&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>p2 =  insert_yaxis_grob(p1, p_top, grid::unit(<span style=\"color:#ff0;font-weight:bold\">.2<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;null&#34;<\/span>), position = <span style=\"color:#0ff;font-weight:bold\">&#34;right&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>ggdraw(p2)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409102300016.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230409102300016.png\" alt=\"image-20230409102300016\" style=\"zoom:67%;\" \/>\n<h2 id=\"\u65b9\u5f0f2-patchwork\">\u65b9\u5f0f2: patchwork<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(patchwork)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p_main = ggplot(df, aes(x = wt, y = mpg, color = cyl)) + \n<\/span><\/span><span style=\"display:flex;\"><span>\tgeom_point() +\n<\/span><\/span><span style=\"display:flex;\"><span>\ttheme(legend.position=<span style=\"color:#0ff;font-weight:bold\">&#34;bottom&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>  \n<\/span><\/span><span style=\"display:flex;\"><span>p_top = ggplot(df, aes(x = wt, color = cyl)) + \n<\/span><\/span><span style=\"display:flex;\"><span>\tgeom_boxplot() + theme_void() +\n<\/span><\/span><span style=\"display:flex;\"><span>\ttheme(legend.position = <span style=\"color:#0ff;font-weight:bold\">&#34;none&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p_right = ggplot(df, aes(x = mpg, color = cyl)) + \n<\/span><\/span><span style=\"display:flex;\"><span>\tgeom_boxplot() + theme_void() +\n<\/span><\/span><span style=\"display:flex;\"><span>\ttheme(legend.position = <span style=\"color:#0ff;font-weight:bold\">&#34;none&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>\tcoord_flip()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>p = p_top + plot_spacer() + p_main + p_right +\n<\/span><\/span><span style=\"display:flex;\"><span>    plot_layout(ncol = <span style=\"color:#ff0;font-weight:bold\">2<\/span>, nrow = <span style=\"color:#ff0;font-weight:bold\">2<\/span>, \n<\/span><\/span><span style=\"display:flex;\"><span>    \t\t\theights = c(<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>),  \n<\/span><\/span><span style=\"display:flex;\"><span>    \t\t\twidths = c(<span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230409102436406.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230409102436406.png\" alt=\"image-20230409102436406\"  \/>\n<\/p>"},{"title":"R-\u53ef\u89c6\u5316--ggbeeswarm\u7ed8\u5236\u8702\u7fa4\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/226-ggbeeswarm\/","pubDate":"Sat, 22 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/226-ggbeeswarm\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#34;ggbeeswarm&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(ggbeeswarm)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>0\u3001\u793a\u4f8b\u6570\u636e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>set.seed(<span style=\"color:#ff0;font-weight:bold\">1995<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>y &lt;- round(rnorm(<span style=\"color:#ff0;font-weight:bold\">200<\/span>), <span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>df &lt;- data.frame(y = y,\n<\/span><\/span><span style=\"display:flex;\"><span>                group = sample(c(<span style=\"color:#0ff;font-weight:bold\">&#34;G1&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;G2&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;G3&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>                               size = <span style=\"color:#ff0;font-weight:bold\">200<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>                               replace = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>head(df)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#      y group<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1  1.1    G3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2 -0.3    G2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3  0.1    G2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 4  0.4    G1<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 5  1.7    G3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 6 -0.3    G3<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>1\u3001\u57fa\u7840\u7ed8\u56fe<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ggplot(df, aes(x = group, y = y)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_beeswarm() \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230422082119980.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230422082119980.png\" alt=\"image-20230422082119980\" style=\"zoom:50%;\" \/>\n<ul>\n<li>2\u3001<code>cex<\/code>\u53c2\u6570\u8bbe\u7f6e\u70b9\u7684\u95f4\u8ddd<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ggplot(df, aes(x = group, y = y)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_beeswarm(cex = <span style=\"color:#ff0;font-weight:bold\">3<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230422082244802.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230422082244802.png\" alt=\"image-20230422082244802\" style=\"zoom: 50%;\" \/>\n<ul>\n<li>\n<p>3\u3001<code>priority<\/code>\u53c2\u6570\u8bbe\u7f6e\u70b9\u7684\u5e03\u5c40\u65b9\u5f0f\uff0c<\/p>"},{"title":"R-\u53ef\u89c6\u5316--ggsignif\u6ce8\u91ca\u663e\u8457\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/227-ggsignif\/","pubDate":"Sat, 22 Apr 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/227-ggsignif\/","description":"<blockquote>\n<p>Github tutorial\uff1ahttps:\/\/github.com\/const-ae\/ggsignif<\/p><\/blockquote>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(ggplot2)\n<\/span><\/span><span style=\"display:flex;\"><span>library(ggsignif)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>1\u3001<code>comparisons<\/code>\u8bbe\u7f6e\u5206\u7ec4\uff0c\u8ba1\u7b97\u5e76\u6807\u6ce8P\u503c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ggplot(mpg, aes(class, hwy)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot() +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_signif(\n<\/span><\/span><span style=\"display:flex;\"><span>    comparisons = list(c(<span style=\"color:#0ff;font-weight:bold\">&#34;compact&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;midsize&#34;<\/span>), \n<\/span><\/span><span style=\"display:flex;\"><span>    \t\t\t\t   c(<span style=\"color:#0ff;font-weight:bold\">&#34;minivan&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;suv&#34;<\/span>)),\n<\/span><\/span><span style=\"display:flex;\"><span>    map_signif_level = <span style=\"color:#fff;font-weight:bold\">TRUE<\/span>, textsize = <span style=\"color:#ff0;font-weight:bold\">6<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    test = <span style=\"color:#0ff;font-weight:bold\">&#34;t.test&#34;<\/span>,  <span style=\"color:#007f7f\"># c(&#34;wilcox.test&#34;,&#34;t.test&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    vjust = <span style=\"color:#ff0;font-weight:bold\">-0.5<\/span> <span style=\"color:#007f7f\"># \u6807\u7b7e\u76f8\u5bf9\u4f4d\u7f6e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  ) +\n<\/span><\/span><span style=\"display:flex;\"><span>  ylim(<span style=\"color:#fff;font-weight:bold\">NA<\/span>, <span style=\"color:#ff0;font-weight:bold\">48<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># map_signif_level\uff1a \u5c06P\u503c\u6620\u5c04\u4e3a\u7b49\u7ea7<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># test\uff1a \u8bbe\u7f6e\u5dee\u5f02\u5206\u6790\u65b9\u6cd5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># size\u3001textsize\u5206\u522b\u8bbe\u7f6e\u7ebf\u4e0e\u6807\u7b7e\u7684\u989c\u8272<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230422092438688.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230422092438688.png\" alt=\"image-20230422092438688\" style=\"zoom:50%;\" \/>\n<ul>\n<li><code>annotation<\/code>\u76f4\u63a5\u4ea4\u4ee3P\u503c\/\u6807\u7b7e\uff0c\u624b\u52a8\u8bbe\u7f6e<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>anno &lt;- t.test(\n<\/span><\/span><span style=\"display:flex;\"><span>  iris$Sepal.Width[iris$Species==<span style=\"color:#0ff;font-weight:bold\">&#34;versicolor&#34;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>  iris$Sepal.Width[iris$Species == <span style=\"color:#0ff;font-weight:bold\">&#34;virginica&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>)$p.value\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [1] 0.001819483<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ggplot(iris, aes(x = Species, y = Sepal.Width, fill = Species)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_boxplot(position = <span style=\"color:#0ff;font-weight:bold\">&#34;dodge&#34;<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_signif(\n<\/span><\/span><span style=\"display:flex;\"><span>    annotation = c(formatC(anno, digits = <span style=\"color:#ff0;font-weight:bold\">1<\/span>),<span style=\"color:#0ff;font-weight:bold\">&#34;***&#34;<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>    y_position = c(<span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">4.5<\/span>), xmin = c(<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>), xmax = c(<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>), <span style=\"color:#007f7f\"># \u4f4d\u7f6e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    tip_length = <span style=\"color:#ff0;font-weight:bold\">0.02<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>  )\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230422092724964.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230422092724964.png\" alt=\"image-20230422092724964\" style=\"zoom: 67%;\" \/>\n<ul>\n<li>\u6df7\u5408\u53e0\u52a0\u591a\u6b21\u6ce8\u91ca<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>ggplot(dat, aes(Group, Value)) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_bar(aes(fill = Sub), stat = <span style=\"color:#0ff;font-weight:bold\">&#34;identity&#34;<\/span>, position = <span style=\"color:#0ff;font-weight:bold\">&#34;dodge&#34;<\/span>, width = <span style=\"color:#ff0;font-weight:bold\">.5<\/span>) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_signif(\n<\/span><\/span><span style=\"display:flex;\"><span>    y_position = c(<span style=\"color:#ff0;font-weight:bold\">5.3<\/span>, <span style=\"color:#ff0;font-weight:bold\">8.3<\/span>), xmin = c(<span style=\"color:#ff0;font-weight:bold\">0.8<\/span>, <span style=\"color:#ff0;font-weight:bold\">1.8<\/span>), xmax = c(<span style=\"color:#ff0;font-weight:bold\">1.2<\/span>, <span style=\"color:#ff0;font-weight:bold\">2.2<\/span>),\n<\/span><\/span><span style=\"display:flex;\"><span>    annotation = c(<span style=\"color:#0ff;font-weight:bold\">&#34;**&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;NS&#34;<\/span>), tip_length = <span style=\"color:#ff0;font-weight:bold\">0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  ) +\n<\/span><\/span><span style=\"display:flex;\"><span>  geom_signif(\n<\/span><\/span><span style=\"display:flex;\"><span>    comparisons = list(c(<span style=\"color:#0ff;font-weight:bold\">&#34;S1&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;S2&#34;<\/span>)),\n<\/span><\/span><span style=\"display:flex;\"><span>    y_position = <span style=\"color:#ff0;font-weight:bold\">9.3<\/span>, tip_length = <span style=\"color:#ff0;font-weight:bold\">0<\/span>, vjust = <span style=\"color:#ff0;font-weight:bold\">0.2<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  ) +\n<\/span><\/span><span style=\"display:flex;\"><span>  scale_fill_manual(values = c(<span style=\"color:#0ff;font-weight:bold\">&#34;grey80&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;grey20&#34;<\/span>))\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230422093043189.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230422093043189.png\" alt=\"image-20230422093043189\" style=\"zoom: 67%;\" \/>"},{"title":"R-\u53ef\u89c6\u5316--funkyheatmap\u7ed8\u5236table\u70ed\u56fe","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/228-funkyheatmap\/","pubDate":"Tue, 13 Jun 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/228-funkyheatmap\/","description":"<ul>\n<li><a href=\"https:\/\/github.com\/funkyheatmap\/funkyheatmap\">https:\/\/github.com\/funkyheatmap\/funkyheatmap<\/a><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># install.packages(&#34;funkyheatmap&#34;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(funkyheatmap)\n<\/span><\/span><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>data(<span style=\"color:#0ff;font-weight:bold\">&#34;mtcars&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>vignette(<span style=\"color:#0ff;font-weight:bold\">&#34;dynbenchmark&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;funkyheatmap&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#vignette(&#34;mtcars&#34;, &#34;funkyheatmap&#34;)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230613211126672.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20230613211126672.png\" alt=\"image-20230613211126672\"  \/>\n<\/p>"},{"title":"R-\u6570\u636e\u5206\u6790--tidyr\u8868\u683c\u64cd\u4f5c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/229-tidyr\/","pubDate":"Sat, 30 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/229-tidyr\/","description":"<p>tidyr\u662f<strong>tidyverse<\/strong>\u7cfb\u5217\u7684\u7ec4\u6210\u5de5\u5177\u5305\u4e4b\u4e00\uff0c\u5176\u4e3b\u8981\u529f\u80fd\u4fa7\u91cd\u4e8e\u8868\u683c\u7684reshaping and organizing. \u4e0b\u9762\u7b80\u8981\u5b66\u4e60\u5176\u51e0\u4e2a\u6bd4\u8f83\u5e38\u7528\u7684\u51fd\u6570\u3002<\/p>\n<ul>\n<li>\n<p><a href=\"https:\/\/tidyr.tidyverse.org\/\">https:\/\/tidyr.tidyverse.org\/<\/a><\/p>\n<\/li>\n<li>\n<p><a href=\"https:\/\/github.com\/rstudio\/cheatsheets\/blob\/main\/tidyr.pdf\">https:\/\/github.com\/rstudio\/cheatsheets\/blob\/main\/tidyr.pdf<\/a><\/p>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>library(tidyverse)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-\u8868\u683c\u957f\u5bbd\u8f6c\u6362\">1. \u8868\u683c\u957f\u5bbd\u8f6c\u6362<\/h1>\n<p>\u7c7b\u4f3creshape2\u5305<\/p>"},{"title":"R\u8bed\u8a00RSelenium\u722c\u866b.md","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/250-rselenium\/","pubDate":"Tue, 10 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/250-rselenium\/","description":"<h1 id=\"1html\u57fa\u7840\u4e0expath\u8bed\u6cd5\">1\u3001html\u57fa\u7840\u4e0expath\u8bed\u6cd5<\/h1>\n<h2 id=\"11-html\u57fa\u7840\">1.1 html\u57fa\u7840<\/h2>\n<ul>\n<li>\u5927\u591a\u6570\u7f51\u9875\u5185\u5bb9\u90fd\u662fhtml\u7ed3\u6784\u7ec4\u7ec7\u7684\uff0c\u5728\u6211\u7406\u89e3\u5c31\u662f\u6709\u4f17\u591a\u8282\u70b9(node)\u7ec4\u6210\u7684\u6811\u72b6\u7ed3\u6784\uff1b<\/li>\n<li>\u800c\u6211\u4eec\u60f3\u8981\u722c\u53d6\u7684\u5185\u5bb9\u5c31\u662f\u5176\u4e2d\u7684\u67d0\u4e2a\u6216\u8005\u67d0\u4e9b\u8282\u70b9\u7684\u6587\u672c\u6807\u7b7e\u6216\u8005\u5c5e\u6027\u4e2d\u3002<\/li>\n<li>\u66f4\u591a\u53ef\u53c2\u8003\uff1a\n\uff081\uff09https:\/\/www.w3cschool.cn\/html\/html-basic.html\n\uff082\uff09<a href=\"https:\/\/blog.csdn.net\/zong596568821xp\/article\/details\/83277729\">HTML\u96f6\u57fa\u7840\u5165\u95e8\u6559\u7a0b\uff08\u8be6\u7ec6\uff09_ZONGXP\u7684\u535a\u5ba2-CSDN\u535a\u5ba2_html5\u96f6\u57fa\u7840\u5165\u95e8\u6559\u7a0b<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-f4feac53f781e66d.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-f4feac53f781e66d.png\" alt=\"\"  \/>\n<\/p>"},{"title":"\u57fa\u4e8eRstudio\u521b\u5efaR\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/252-r-package\/","pubDate":"Sun, 22 Jan 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/252-r-package\/","description":"<blockquote>\n<p>\u603b\u7ed3\u4e00\u4e0b\u76ee\u524d\u5b66\u4e60\u7684\uff0c\u57fa\u4e8eRstudio\u7684\u521b\u5efaR\u5305\u6d41\u7a0b\u3002<\/p><\/blockquote>\n<h2 id=\"part1\u521b\u5efar\u5305\u57fa\u672c\u6d41\u7a0b\">Part1\uff1a\u521b\u5efaR\u5305\u57fa\u672c\u6d41\u7a0b<\/h2>\n<h3 id=\"step1\u5efa\u7acb\u5f00\u53d1\u73af\u5883\">step1\uff1a\u5efa\u7acb\u5f00\u53d1\u73af\u5883<\/h3>\n<ul>\n<li>\u76ee\u7684\u662f\u521b\u5efa\u4e00\u4e2a\u6587\u4ef6\u5939\uff0c\u7528\u4e8e\u50a8\u5b58\u7f16\u5199R\u5305\u7684\u5404\u79cd\u6587\u6863\uff1b\u5728\u521b\u5efa\u4e4b\u524d\u60f3 \u597dR\u5305\u7684\u540d\u5b57\uff0c\u4ee5\u53ca\u6587\u4ef6\u5939\u7684\u8def\u5f84\u3002<\/li>\n<li>\u8fd9\u91cc\u793a\u4f8bR\u5305\u540d\u4e3a<code>newPackage<\/code>\u3002<\/li>\n<li>\u8fdb\u5165Rstudio\u754c\u9762\uff0c\u4f9d\u6b21\u70b9\u51fb<code>File \u2192 New project \u2192 New Directory \u2192 R package<\/code>,\u4f1a\u51fa\u73b0\u5982\u4e0b\u754c\u9762\uff0c\u586b\u5199\u597dR\u5305\u540d\u5b57\uff0c\u9009\u62e9\u597d\u5f00\u53d1\u5305\u7684\u5de5\u4f5c\u76ee\u5f55\uff08\u5176\u5b83\u6682\u65f6\u90fd\u4e0d\u7528\u8003\u8651\uff09\uff1b\u6700\u540e\u70b9\u51fb<code>Creat Project<\/code>\u5373\u53ef\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-dfcc151f2e1b379a.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-dfcc151f2e1b379a.png\" style=\"zoom:50%;\" \/>\n<ul>\n<li>\u5982\u4e0a\u64cd\u4f5c\u540e\uff0c\u4f1a\u8fdb\u5165\u65b0\u7684\u5de5\u4f5c\u73af\u5883\uff0c\u5373R\u5305\u5f00\u53d1\u73af\u5883\uff1b\u540c\u65f6\u5df2\u7ecf\u521b\u5efa\u597dR\u5305\u5f00\u53d1\u6240\u9700\u7684\u6240\u5fc5\u987b\u7684\u6a21\u677f\u6587\u6863\u3002\u4e3b\u8981\u5305\u62ec4\u4e2a\u90e8\u5206\uff1a<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/20354525-cbe293578c2aeb32.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/program\/20354525-cbe293578c2aeb32.png\" style=\"zoom:67%;\" \/>\n<p>\uff081\uff09<strong>R \u6587\u4ef6\u5939<\/strong>\uff1a\u7528\u4e8e\u5b58\u653eR\u51fd\u6570\u811a\u672c\u7684\u6587\u4ef6\u5939\uff1b\u91cc\u9762\u6709\u4e00\u4e2a\u793a\u4f8b\u6587\u4ef6hello.R\n\uff082\uff09man \u6587\u4ef6\u5939\uff1a\u7528\u4e8e\u5b58\u653e\u5bf9\u5e94\u4e0a\u8ff0R\u51fd\u6570\u7684\u8bf4\u660e\u6587\u6863Rd\u6587\u4ef6\u7684\u6587\u4ef6\u5939\uff1b\u91cc\u9762\u6709\u4e00\u4e2a\u793a\u4f8b\u6587\u4ef6hello.Rd\u3002\n\uff083\uff09<strong>DESCRIPTION<\/strong>\uff1a\u5173\u4e8eR\u5305\u7684\u8bf4\u660e\u6587\u6863\u3002\n\uff084\uff09NAMESPACE\uff1a\u58f0\u660eR\u5305\u5bfc\u51fa\u4ee5\u4f9b\u5916\u90e8\u4f7f\u7528\u7684\u51fd\u6570\u4ee5\u53caR\u5305\u4ece\u5176\u4ed6\u5305\u5bfc\u5165\u7684\u5916\u90e8\u51fd\u6570\u3002<\/p>"},{"title":"shiny\u5305\u5f00\u53d1\u7f51\u9875APP\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/251-shiny-app\/","pubDate":"Sun, 22 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/251-shiny-app\/","description":"<blockquote>\n<p>\u4e3b\u8981\u53c2\u8003\u6559\u7a0b \uff1ahttps:\/\/shiny.rstudio.com\/tutorial\/written-tutorial\/lesson1\/<\/p><\/blockquote>\n<h1 id=\"1\u57fa\u672c\u6846\u67b6\">1\u3001\u57fa\u672c\u6846\u67b6<\/h1>\n<p>\uff081\uff09ui\uff1a\u5e03\u5c40\u5448\u73b0\u7ed9\u7528\u6237\u7684\u8f93\u5165\u3001\u8f93\u51fa\u754c\u9762<\/p>"},{"title":"R\u5305purrr\u7684\u51fd\u6570\u7f16\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/253-purrr\/","pubDate":"Sun, 09 Jul 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/253-purrr\/","description":"<blockquote>\n<p>purrr\u5305\u662ftidyverse\u7cfb\u5217\u4e2d\u7528\u4e8e\u51fd\u6570\u7f16\u7a0b\u7684\u5de5\u5177\uff0c\u5f88\u591a\u7528\u6cd5\u7c7b\u4f3cR base\u7684apply\u7cfb\u5217\u51fd\u6570\u3002\u73b0\u53c2\u8003\u76f8\u5173\u8d44\u6599\uff0c\u5b66\u4e60\u5176\u57fa\u672c\u7528\u6cd5\u3002<\/p>\n<ul>\n<li><a href=\"https:\/\/jennybc.github.io\/purrr-tutorial\/index.html\">https:\/\/jennybc.github.io\/purrr-tutorial\/index.html<\/a><\/li>\n<li><a href=\"https:\/\/shixiangwang.github.io\/home\/cn\/post\/purrr-loop\/\">https:\/\/shixiangwang.github.io\/home\/cn\/post\/purrr-loop\/<\/a><\/li>\n<\/ul>\n<p><img loading=\"lazy\" src=\"https:\/\/ih1.redbubble.net\/image.329884292.2339\/sticker,375x360-bg,ffffff.u1.png\" alt=\"Introduction to purrr\"  \/>\n<\/p>"},{"title":"shiny\u5305\u5f00\u53d1\u7f51\u9875APP\u8fdb\u9636","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/254-shiny-advanced\/","pubDate":"Sun, 13 Aug 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/254-shiny-advanced\/","description":"<blockquote>\n<p>shiny\u4e2dserver\u90e8\u5206\u7684render\u00d7\u00d7\u00d7\u7cfb\u5217\u51fd\u6570\u662f\u751f\u6210reactive output\u7684\u4e3b\u8981\u65b9\u5f0f\u3002\u53ea\u8981\u5176\u5185\u90e8\u7684\u4efb\u4e00input$\u00d7\u00d7\u00d7\u8f93\u5165\u53c2\u6570\u53d1\u751f\u53d8\u5316\u90fd\u4f1a\u91cd\u65b0\u5c06\u8be5\u51fd\u6570\u5185\u90e8\u4ee3\u7801\u5168\u90e8\u91cd\u65b0\u8ba1\u7b97\u4e00\u904d\u4ee5\u66f4\u65b0\u8f93\u51fa\u3002\u6b64\u5916\uff0c\u7c7b\u4f3c<code>reactive()<\/code>\uff0c<code>observeEvent()<\/code>\u7b49\u53ef\u4ee5\u5e2e\u52a9\u5b9e\u73b0\u66f4\u52a0\u590d\u6742\u7684\u8f93\u5165\u8f93\u51fa\u63a7\u5236\uff0c\u4e0b\u9762\u7b80\u5355\u5b66\u4e60\u8bb0\u5f55\u4e0b\u3002<\/p>"},{"title":"Shiny-basic-1-IO","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/255-shiny-io\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/255-shiny-io\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-basic-2-Layout","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/256-shiny-layout\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/256-shiny-layout\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-basic-3-Reactive","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/257-shiny-reactive\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/257-shiny-reactive\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-basic-4-Feedback","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/258-shiny-feedback\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/258-shiny-feedback\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-basic-5-Module","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/259-shiny-module\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/259-shiny-module\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-1-shinyWidgets","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/260-shinywidgets\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/260-shinywidgets\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-2-shinyJS","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/261-shinyjs\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/261-shinyjs\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-3-shinydashboard","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/262-shinydashboard\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/262-shinydashboard\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-4-shinydashboardPlus","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/263-shinydashboard-plus\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/263-shinydashboard-plus\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-5-bslib","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/264-bslib\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/264-bslib\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"Shiny-pkg-6-others","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/265-shiny-others\/","pubDate":"Sun, 31 Mar 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/265-shiny-others\/","description":"<p><strong>Shiny Basic\u7cfb\u5217:<\/strong><\/p>\n<blockquote>\n<p>\u53c2\u8003\u6559\u7a0b\uff1ahttps:\/\/mastering-shiny.org\/<\/p><\/blockquote>\n<p>\uff081\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/255shiny-basic-1-io\/\">IO\u63a7\u4ef6<\/a><\/p>\n<p>\uff082\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/256shiny-basic-2-layout\/\">Layout\u5e03\u5c40<\/a><\/p>\n<p>\uff083\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/257shiny-basic-3-reactive\/\">Reactive\u7528\u6cd5<\/a><\/p>\n<p>\uff084\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/258shiny-basic-4-feedback\/\">Feedback\u63d0\u9192<\/a><\/p>\n<p>\uff085\uff09<a href=\"https:\/\/lishensuo.github.io\/posts\/program\/259shiny-basic-5-module\/\">Module\u6a21\u5757<\/a><\/p>\n<p><strong>Shiny Package\u7cfb\u5217:<\/strong><\/p>"},{"title":"renv\u5305\u73af\u5883\u53ef\u91cd\u590d\u6027","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/266-renv\/","pubDate":"Sat, 06 Apr 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/266-renv\/","description":"<ul>\n<li><a href=\"https:\/\/rstudio.github.io\/renv\">https:\/\/rstudio.github.io\/renv<\/a><\/li>\n<li>\u8bb0\u5f55\u4e00\u4e2aR\u9879\u76ee\u6240\u9700\u7684R\u5305\u6765\u6e90\u53ca\u5176\u76f8\u5e94\u7684\u7248\u672c\u53f7\uff0c\u65b9\u4fbf\u5bf9\u4e8e\u5176\u4ed6\u7528\u6237\u7684\u53ef\u91cd\u590d\u6027\u5206\u6790\u3002<\/li>\n<\/ul>\n<img src=\"https:\/\/rstudio.github.io\/renv\/articles\/renv.png\" style=\"zoom: 80%;\" \/>\n<h2 id=\"1-\u521d\u59cb\u5316\u9879\u76ee\">1. \u521d\u59cb\u5316\u9879\u76ee<\/h2>\n<ul>\n<li>\u5728\u5f53\u524d\u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u6587\u4ef6\u5939\uff0c\u662f\u5305\u542b\u4e00\u4e2aR project\u5bf9\u8c61\u7684\u5de5\u4f5c\u73af\u5883\uff1b<\/li>\n<li>\u5176\u4e2dlibrary\u6587\u4ef6\u5939\u662f\u8be5\u5de5\u4f5c\u73af\u5883\u5b89\u88c5R\u5305\u7684\u8def\u5f84\uff0c<code>renv.lock<\/code>\u662f\u8bb0\u5f55R\u5305\u53ca\u5176\u7248\u672c\u540e\u7684\u91cd\u8981\u6587\u4ef6\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>renv::init(<span style=\"color:#0ff;font-weight:bold\">&#34;foo_project&#34;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u521d\u59cb\u5316\u540e\u4f1a\u81ea\u52a8\u5207\u6362\u5230\u8be5\u73af\u5883\u4e0b\uff0c\u5982\u679c\u6ca1\u6709\u53ef\u4ee5\u624b\u52a8\u5207\u6362<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># setwd(&#34;foo_project&#34;)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240405112909657.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20240405112909657.png\" alt=\"image-20240405112909657\"  \/>\n<\/p>"},{"title":"rhinoverse\u7cfb\u5217-rhino\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/267-rhino\/","pubDate":"Sat, 06 Apr 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/267-rhino\/","description":"<p><strong>rhinoverse\u7cfb\u5217<\/strong><\/p>\n<ol>\n<li><a href=\"https:\/\/lishensuo.github.io\/posts\/program\/267rhinoverse%E7%B3%BB%E5%88%97-rhino%E5%8C%85\/\">rhinoverse\u7cfb\u5217-rhino\u5305<\/a>\uff1b<\/li>\n<li><a href=\"https:\/\/lishensuo.github.io\/posts\/program\/268rhinoverse%E7%B3%BB%E5%88%97-shiny.router%E5%8C%85\/\">rhinoverse\u7cfb\u5217-shiny.router\u5305<\/a>\uff1b<\/li>\n<\/ol>\n<hr>\n<ul>\n<li><a href=\"https:\/\/github.com\/Appsilon\/rhino\/\">https:\/\/github.com\/Appsilon\/rhino\/<\/a><\/li>\n<li><a href=\"https:\/\/appsilon.github.io\/rhino\/\">https:\/\/appsilon.github.io\/rhino\/<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240406215907465.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20240406215907465.png\" alt=\"image-20240406215907465\"  \/>\n<\/p>"},{"title":"rhinoverse\u7cfb\u5217-shiny.router\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/268-shiny-router\/","pubDate":"Sat, 06 Apr 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/268-shiny-router\/","description":"<p><strong>rhinoverse\u7cfb\u5217<\/strong><\/p>\n<ol>\n<li><a href=\"https:\/\/lishensuo.github.io\/posts\/program\/267rhinoverse%E7%B3%BB%E5%88%97-rhino%E5%8C%85\/\">rhinoverse\u7cfb\u5217-rhino\u5305<\/a>\uff1b<\/li>\n<li><a href=\"https:\/\/lishensuo.github.io\/posts\/program\/268rhinoverse%E7%B3%BB%E5%88%97-shiny.router%E5%8C%85\/\">rhinoverse\u7cfb\u5217-shiny.router\u5305<\/a>\uff1b<\/li>\n<\/ol>\n<hr>\n<ul>\n<li><a href=\"https:\/\/appsilon.github.io\/shiny.router\/\">https:\/\/appsilon.github.io\/shiny.router\/<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/Appsilon\/shiny.router\">https:\/\/github.com\/Appsilon\/shiny.router<\/a><\/li>\n<\/ul>\n<p>\u5728\u7f51\u9875\u8bbe\u8ba1\u548c\u5f00\u53d1\u4e2d\uff0c\u8def\u7531\uff08Routing\uff09\u662f\u6307\u786e\u5b9a\u7528\u6237\u5728\u6d4f\u89c8\u5668\u4e2d\u8bbf\u95ee\u4e0d\u540c\u9875\u9762\uff08URL\uff09\u65f6\uff0c\u5e94\u8be5\u52a0\u8f7d\u54ea\u4e9b\u9875\u9762\u5185\u5bb9\uff08UI\uff09\u8fc7\u7a0b\u3002\u5176\u4f18\u70b9\u5305\u62ec\uff081\uff09\u5141\u8bb8\u5355\u9875\u9762\u5e94\u7528\uff0c\u65e0\u9700\u4e00\u6b21\u6027\u52a0\u8f7d\u5168\u90e8\u9875\u9762\uff1b\uff082\uff09\u9875\u9762\u4e4b\u95f4\u7684\u6d41\u7545\u5207\u6362\uff0c\u4e0d\u4f1a\u611f\u5230\u660e\u663e\u7684\u5ef6\u8fdf\u7b49<\/p>"},{"title":"UCSCXenaShiny development tutorials(231119)","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/300-ucscxenashiny-dev\/","pubDate":"Sun, 19 Nov 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/300-ucscxenashiny-dev\/","description":"<blockquote>\n<p>Recently, we have added some new modules for general TCGA data analysis and visualization. Here, we will provide the tutorials for easy use. Please note it is not the latest version and we are still in the stage of development. Therefore, if you have any question, please do not hesitate to contact us on GitHub or email (<a href=\"mailto:lishensuo@163.com\">lishensuo@163.com<\/a>) which could greatly contribute to UCSCXenaShiny V2.0  process.<\/p>\n<p><strong>The temporary tutorial is based on the latest <a href=\"https:\/\/github.com\/openbiox\/UCSCXenaShiny\/commit\/5bd91911c85590fc369ab61471450fa9564bda7a\">commit <\/a> On November 18, 2023. It may be outdated in the future and we will update the latest tutorials as soon as possible.<\/strong><\/p>"},{"title":"\u6587\u732e--\u524d\u5217\u817a\u764c\u57fa\u7840\u5b66\u4e60","link":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/301-prostate-cancer\/","pubDate":"Thu, 19 Sep 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/basic\/301-prostate-cancer\/","description":"<ul>\n<li>\u524d\u5217\u817a\u764c\uff08Prostate cancer, PCa\uff09\u80bf\u7624\u751f\u7269\u5b66\u57fa\u7840\u7684\u5b66\u4e60\u7b14\u8bb0<\/li>\n<li>\u8bfe\u7a0b\u94fe\u63a5\uff1ahttps:\/\/www.bilibili.com\/video\/BV1Dj411R73C<\/li>\n<\/ul>\n<h1 id=\"1-\u751f\u7269\u57fa\u7840\">1. \u751f\u7269\u57fa\u7840<\/h1>\n<h2 id=\"11-\u524d\u5217\u817a\u764c\">1.1 \u524d\u5217\u817a\u764c<\/h2>\n<ul>\n<li>\u524d\u5217\u817a (Prostate)\n<ul>\n<li>\u4e00\u79cd\u7537\u6027\u7684\u817a\u4f53\u5668\u5b98\uff0c\u6838\u6843\u5927\u5c0f\uff0c\u4f4d\u4e8e\u8180\u80f1\u4e0b\u65b9\uff1b<\/li>\n<li>(1) \u9632\u6b62\u5c3f\u8def\u611f\u67d3\uff1b(2) \u4ea7\u751f\u7684Prostate Specific Antigen (PSA, \u524d\u5217\u817a\u7279\u5f02\u6027\u6297\u539f) \u86cb\u767d\u9176\u53ef\u4ee5\u5e2e\u52a9\u6db2\u5316\u7cbe\u6db2 \uff08\u4e0e\u52c3\u8d77\u3001\u751f\u6b96\u65e0\u5173\uff09\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u826f\u6027\u524d\u5217\u817a\u589e\u751f (Benign Prostatic Hyperplasia, BPH)\n<ul>\n<li>\u968f\u7740\u5e74\u9f84\u589e\u957f\u800c\u8868\u73b0\u51fa\u7684\u524d\u5217\u817a\u589e\u5927\uff0c\u5bfc\u81f4\u6392\u5c3f\u56f0\u96be\uff1b<\/li>\n<li>\u5b83\u4e0d\u662f\u524d\u5217\u817a\u764c\u7684\u8bf1\u53d1\u56e0\u7d20\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240918211100038.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/basic\/image-20240918211100038.png\" alt=\"image-20240918211100038\" style=\"zoom: 50%;\" \/>\n<ul>\n<li>\u524d\u5217\u817a\u764c(Prostate Cancer, PCa)<\/li>\n<\/ul>\n<p><strong>\uff081\uff09\u53d1\u75c5\u7387<\/strong><\/p>"},{"title":"shell\u57fa\u7840--\u53d8\u91cf\u540d\u5b57\u7b26\u4e32\u64cd\u4f5c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/400-shell-strings\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/400-shell-strings\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>test=<span style=\"color:#0ff;font-weight:bold\">&#34;https:\/\/www.baidu.com&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6253\u5370\u5b57\u7b26\u4e32\u5185\u5bb9<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">echo<\/span> <span style=\"color:#0ff;font-weight:bold\">${<\/span>test<span style=\"color:#0ff;font-weight:bold\">}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#https:\/\/www.baidu.com<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u6253\u5370\u5b57\u7b26\u4e32\u957f\u5ea6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">echo<\/span> <span style=\"color:#0ff;font-weight:bold\">${#<\/span>test<span style=\"color:#0ff;font-weight:bold\">}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#21<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1\u622a\u53d6\">1\u3001\u622a\u53d6<\/h1>\n<h3 id=\"1\u6307\u5b9a\u622a\u53d6\u5b57\u7b26\u4e32\u7684\u8d77\u59cb\u4f4d\u7f6e\u4e0e\u957f\u5ea6\">\uff081\uff09\u6307\u5b9a\u622a\u53d6\u5b57\u7b26\u4e32\u7684\u8d77\u59cb\u4f4d\u7f6e\u4e0e\u957f\u5ea6<\/h3>\n<blockquote>\n<p>\u5bf9\u4e8e\u5b57\u7b26\u4e32\u7684\u8d77\u59cb\u4f4d\u7f6e\u5b9a\u4e49\uff1a\u5982\u679c\u662f\u4ece\u5de6\u5230\u53f3\uff0c\u5219\u7b2c\u4e00\u4e2a\u5b57\u7b26\u4f4d\u7f6e\u4e3a0\uff1b\n\u5982\u679c\u662f\u4ece\u53f3\u5230\u5de6\uff0c\u5219\u7b2c\u4e00\u4e2a\u5b57\u7b26\u4f4d\u7f6e\u4e3a1\u3002<\/p>"},{"title":"shell\u57fa\u7840--find\u67e5\u627e\u6587\u4ef6","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/401-shell-find\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/401-shell-find\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u7b2c\u4e00\u4e2a\u53c2\u6570\u4ea4\u5f85\u67e5\u627e\u8def\u5f84\uff0c\u9ed8\u8ba4\u4e3a\u5f53\u524d\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  -name \u53c2\u6570\u6307\u5b9a\u9700\u8981\u67e5\u627e\u7684\u6587\u4ef6\u540d\uff0c\u652f\u6301\u6b63\u5219\u8868\u8fbe\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find .\/dir1\/ -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -maxdepth \u6307\u5b9a\u67e5\u627e\u7684\u6700\u5927\u76ee\u5f55\u5c42\u7ea7\u6df1\u5ea6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -maxdepth <span style=\"color:#ff0;font-weight:bold\">2<\/span> -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -type d \u8868\u793a\u67e5\u627e\u76ee\u5f55\u7c7b\u578b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -type f \u8868\u793a\u67e5\u627e\u6587\u4ef6\u7c7b\u578b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -type f -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u67e5\u627e\u6307\u5b9a\u5927\u5c0f\u8303\u56f4\u7684\u6587\u4ef6\uff1b\u5982\u4e0b\u8868\u793a\u67e5\u627e\u5927\u5c0f\u8303\u56f4\u572850M~100M\u8303\u56f4\u4e4b\u95f4\u7684\u6587\u4ef6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -size +50M -size -100M\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u627e\u5230\u6587\u4ef6\u540e\uff0c\u6267\u884c\u4e00\u4e9b\u547d\u4ee4\u64cd\u4f5c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u67e5\u770b\u627e\u5230\u6587\u4ef6\u7684\u8be6\u7ec6\u4fe1\u606f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span> -exec ls -l {} <span style=\"color:#0ff;font-weight:bold\">\\;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u8fd4\u56de\u627e\u5230\u6587\u4ef6\u7684\u6587\u4ef6\u540d\uff08\u53bb\u9664\u8def\u5f84\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>find -name <span style=\"color:#0ff;font-weight:bold\">&#39;*.txt&#39;<\/span> -exec basename {} <span style=\"color:#0ff;font-weight:bold\">\\;<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"shell\u57fa\u7840--tar.gz\u76f8\u5173\u3001gzip\u538b\u7f29\u4e0epigz\u591a\u7ebf\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/402-gzip-pigz\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/402-gzip-pigz\/","description":"<ul>\n<li>tar\u76f8\u5173<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(1) \u5c06\u591a\u4e2a\u6587\u4ef6\u6253\u5305\u4e3a .tar\u6587\u4ef6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tar -cvf test.tar dir1 file4\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(2) \u5c06\u591a\u4e2a\u6587\u4ef6\u6253\u5305\u5e76\u538b\u7f29\u4e3a .tar.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tar -czvf test.tar.gz dir1 file4\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(3) \u5c06 .tar\u6587\u4ef6\u62c6\u5305<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tar -xvf test.tar\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#(4) \u5c06 .tar.gz\u6587\u4ef6\u89e3\u538b\u62c6\u5305<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tar -xzvf test.tar.gz\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\n<p>gzip\u538b\u7f29\u662f\u7684\u6587\u4ef6\u591a\u4e3a<code>file.gz<\/code>, \u5bf9\u5e94\u7684linux\u547d\u4ee4\u4e3a\uff1a<\/p>"},{"title":"shell\u57fa\u7840--grep\u7b49\u6587\u672c\u5904\u7406\u547d\u4ee4","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/403-shell-grep\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/403-shell-grep\/","description":"<h1 id=\"1grep\">1\u3001grep<\/h1>\n<ul>\n<li>\u4e3b\u8981\u529f\u80fd\uff1a\u67e5\u8be2\u7b26\u5408\u6761\u4ef6\u7684\u884c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u8fd4\u56de\u7b26\u5408\u6761\u4ef6\u7684\u884c,\u53ef\u4f7f\u7528\u6b63\u5219\u8868\u8fbe\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>who | grep <span style=\"color:#0ff;font-weight:bold\">&#34;wuyt&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -n\u53c2\u6570\uff1a\u8fd4\u56de\u7b26\u5408\u6761\u4ef6\u7684\u884c\uff0c\u53ca\u5176\u5728\u539f\u6587\u4ef6\u4e2d\u7684\u4f4d\u7f6e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>who | grep -n <span style=\"color:#0ff;font-weight:bold\">&#34;wuyt&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -c\u53c2\u6570\uff1a\u4ec5\u8fd4\u56de\u7b26\u5408\u6761\u4ef6\u7684\u884c\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>who | grep -c <span style=\"color:#0ff;font-weight:bold\">&#34;wuyt&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -v\u53c2\u6570\uff1a\u53cd\u9009<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>who | grep -v <span style=\"color:#0ff;font-weight:bold\">&#34;wuyt&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># -E\u53c2\u6570\uff1a\u7b26\u5408\u591a\u4e2a\u6761\u4ef6\u4e4b\u4e00<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>who | grep -E <span style=\"color:#0ff;font-weight:bold\">&#34;wuyt|ssli&#34;<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2sed\">2\u3001sed<\/h1>\n<ul>\n<li>\u4e3b\u8981\u529f\u80fd\uff1a\u589e\u5220\u6539\u67e5<\/li>\n<\/ul>\n<p>\uff081\uff09\u5220\u9664<\/p>"},{"title":"linux\u8fdb\u7a0b\u7ba1\u7406\u4e0e\u540e\u53f0\u8fd0\u884c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/450-linux-process\/","pubDate":"Sat, 14 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/450-linux-process\/","description":"<h1 id=\"1\u5173\u4e8ecpu\u4e0e\u7ebf\u7a0b\">1\u3001\u5173\u4e8eCPU\u4e0e\u7ebf\u7a0b<\/h1>\n<h2 id=\"11-\u7b80\u5355\u7406\u89e3\u8fdb\u7a0b\u4e0e\u7ebf\u7a0b\">1.1 \u7b80\u5355\u7406\u89e3\u8fdb\u7a0b\u4e0e\u7ebf\u7a0b<\/h2>\n<ul>\n<li>\u8fdb\u7a0b\uff1a\u8ba1\u7b97\u673a\u6267\u884c\u7684\u4e00\u4e2a\u547d\u4ee4\u6216\u8005\u7a0b\u5e8f<\/li>\n<li>\u7ebf\u7a0b\uff1a\u4e00\u822c\u6765\u8bf4\u4e00\u4e2a\u8fdb\u7a0b\u5bf9\u5e94\u4e00\u4e2a\u7ebf\u7a0b\u3002\u4f46\u662f\u5982\u679c\u8fdb\u7a0b\u4efb\u52a1\u53ef\u4ee5\u5206\u4e3a\u82e5\u5e72\u72ec\u7acb\u5b50\u4efb\u52a1\u72ec\u7acb\u8fd0\u884c\u65f6\uff0c\u53ef\u4ee5\u8c03\u7528\u591a\u7ebf\u7a0b\uff0c\u52a0\u5feb\u5206\u6790\u901f\u5ea6\u3002<\/li>\n<\/ul>\n<h2 id=\"12-cpu\u4e0e\u6838\u6570\">1.2 cpu\u4e0e\u6838\u6570<\/h2>\n<ul>\n<li>CPU(Central Processing Unit)\u4e2d\u592e\u5904\u7406\u5668\uff0c\u5c5e\u4e8e\u786c\u4ef6\u3002\u4e00\u822cwindow\u7b14\u8bb0\u672c\u7535\u8111\u6709\u4e00\u4e2aCPU(physical cpu)<\/li>\n<\/ul>\n<img src=\"https:\/\/encrypted-tbn0.gstatic.com\/images?q=tbn:ANd9GcSfAH-Rz4sfQuBkCaJ1ZWz_M7oUUZTAgQLUBb4ZYekdFcawewIPG-u8nHySkZfp1OMUFrI&usqp=CAU\" alt=\"\u96fb\u8166CPU\u591a\u6838\u6578\u548c\u591a\u7dda\u7a0b\u7684\u5340\u5225\u5c0d\u6bd4\uff014\u68388\u7dda\u7a0b\u548c6\u68386\u7dda\u7a0b\u54ea\u500b\u597d\uff1f - \u58f9\u8b80\" style=\"zoom:33%;\" \/>\n<ul>\n<li>\u6838\u5fc3\uff08core\uff09\uff0c\u53c8\u79f0\u4e3a\u5185\u6838\u3002\u4e00\u4e2aCPU\u82af\u7247\u53ef\u4ee5\u7269\u7406\u6280\u672f\u4e0a\u96c6\u6210\u591a\u4e2a\u5185\u6838\uff0c\u6bcf\u4e2a\u5185\u6838\u53ef\u4ee5\u72ec\u7acb\u8fd0\u884c\u4e00\u4e2a\u7ebf\u7a0b\uff0c\u6700\u5927\u5316\u5229\u7528CPU\u8d44\u6e90\u3002<\/li>\n<li>\u903b\u8f91CPU\u6570\uff0c\u662f\u6307\u901a\u8fc7\u865a\u62df\u5316\u6280\u672f\u6bcf\u4e2a\u5185\u6838\u5212\u5206\u4e3a\u4e24\u4e2a\u865a\u62df(logical)CPU\u5185\u6838\uff0c\u53ef\u4ee5\u7406\u89e3\u4e3a\u6bcf\u4e2a\u5185\u6838\u7684\u8d85\u7ebf\u7a0b\u6570\uff0c\u4e00\u822c\u4e3a2\u3002\u76ee\u524dwindow\/linux\u7cfb\u7edf\u90fd\u652f\u6301\u3002<\/li>\n<li>\u603b\u903b\u8f91CPU\u6570=\u7269\u7406CPU\u6570 \u00d7 \u6bcf\u4e2aCPU\u82af\u7247\u4e0a\u7684\u96c6\u6210\u5185\u6838\u6570 \u00d7 \u6bcf\u4e2a\u5185\u6838\u7684\u8d85\u7ebf\u7a0b\u6570<\/li>\n<\/ul>\n<p><img loading=\"lazy\" src=\"https:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/aHR0cDovL2hpLmNzZG4ubmV0L2F0dGFjaG1lbnQvMjAxMTA3LzMxLzBfMTMxMjExOTc3OUp0SDUuZ2lm\" alt=\"CPU\u3001\u6838\u5fc3\u6570\u3001\u7ebf\u7a0b\u6570\u3001\u8fd0\u884c\u5185\u5b58\u3001\u8d85\u7ebf\u7a0b\u7406\u89e3_\u90dd\u5c11\u7684\u535a\u5ba2-CSDN\u535a\u5ba2_\u8d85\u7ebf\u7a0b\u6570\"  \/>\n<\/p>"},{"title":"\u521d\u8bc6slurm\u57fa\u7840\u64cd\u4f5c","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/451-slurm\/","pubDate":"Sat, 10 Sep 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/451-slurm\/","description":"<p>\u73b0\u9636\u6bb5\u5728\u5b66\u4e60\u6df1\u5ea6\u5b66\u4e60\u8d85\u53c2\u6570\u4f18\u5316\u8fc7\u7a0b\u4e2d\u6d89\u53ca\u5230SLURM\u76f8\u5173\u77e5\u8bc6\u3002\u8fd9\u51e0\u5929\u63a2\u7d22\u4e86\u4e00\u756a\uff0c\u7b80\u5355\u8bb0\u5f55\u4e00\u4e0b\u76ee\u524d\u7b80\u5355\u8ba4\u8bc6\u3002<\/p>\n<p>SLURM\uff0cSimple Linux Utility for Resource Management\u7684\u7f29\u5199\uff0c\u662f\u4e00\u4e2a\u5f00\u6e90\u3001\u5bb9\u9519\u3001\u9ad8\u5ea6\u53ef\u6269\u5c55\u7684\u96c6\u7fa4\u7ba1\u7406\u548c\u4f5c\u4e1a\u8c03\u5ea6\u7cfb\u7edf\u3002<\/p>"},{"title":"Snakemake\u6d41\u7a0b\u642d\u5efa","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/452-snakemake\/","pubDate":"Sun, 22 Sep 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/452-snakemake\/","description":"<ul>\n<li><a href=\"https:\/\/snakemake.readthedocs.io\/en\/stable\/tutorial\/tutorial.html\">https:\/\/snakemake.readthedocs.io\/en\/stable\/tutorial\/tutorial.html<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/snakemake\/snakemake\">https:\/\/github.com\/snakemake\/snakemake<\/a><\/li>\n<\/ul>\n<p><img loading=\"lazy\" src=\"https:\/\/genomics.ed.ac.uk\/wp-content\/uploads\/2024\/08\/snakemake_logo.png\" alt=\"Snakemake\"  \/>\n<\/p>\n<h1 id=\"1-\u7b80\u4ecb\">1. \u7b80\u4ecb<\/h1>\n<h2 id=\"11-\u5de5\u5177\u4ecb\u7ecd\">1.1 \u5de5\u5177\u4ecb\u7ecd<\/h2>\n<ul>\n<li>Snakemake \u662f\u4e00\u4e2a\u7528\u4e8e\u521b\u5efa\u53ef\u91cd\u73b0\u3001\u6a21\u5757\u5316\u3001\u81ea\u52a8\u5316\u7684\u5de5\u4f5c\u6d41\u7ba1\u7406\u5de5\u5177\uff0c\u4e3b\u8981\u7528\u4e8e\u5904\u7406\u590d\u6742\u7684\u6570\u636e\u5206\u6790\u6d41\u7a0b\uff1b\u5728\u751f\u7269\u4fe1\u606f\u5b66\u9886\u57df\u4e2d\u6709\u8f83\u591a\u7684\u5e94\u7528\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240922130122018.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/program\/image-20240922130122018.png\" alt=\"image-20240922130122018\"  \/>\n<\/p>"},{"title":"linux\u8bbe\u5907\u6302\u8f7dmount","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/453-linux-mount\/","pubDate":"Tue, 01 Jul 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/453-linux-mount\/","description":"<h1 id=\"\u7b80\u5355\u80cc\u666f\u77e5\u8bc6\">\u7b80\u5355\u80cc\u666f\u77e5\u8bc6<\/h1>\n<p>\u6302\u8f7d(mount) = \u628a\u4e00\u4e2a\u5b58\u50a8\u8bbe\u5907\uff08\u5982\u786c\u76d8\u3001U\u76d8\uff0c \u901a\u5e38\u5728<code>\/dev\/<\/code>\u4e0b\u9762\uff09\u8fde\u63a5\u5230\u7cfb\u7edf\u7684\u67d0\u4e2a\u76ee\u5f55\uff0c\u8ba9\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2a\u76ee\u5f55\u8bbf\u95ee\u8bbe\u5907\u5185\u5bb9\u3002<\/p>\n<ul>\n<li><code>\/dev\/sda<\/code> :\u7b2c\u4e00\u4e2a\u88ab\u8bc6\u522b\u7684\u78c1\u76d8\uff08\u901a\u5e38\u662f\u4e3b\u786c\u76d8\uff09, \u5e38\u4f5c\u4e3a\u7cfb\u7edf\u76d8\uff1b<\/li>\n<li><code>\/dev\/sdb<\/code>: \u7b2c\u4e8c\u4e2a\u88ab\u8bc6\u522b\u7684\u78c1\u76d8\uff08\u901a\u5e38\u662fU\u76d8\u6216\u5916\u63a5\u76d8\uff09,\u5e38\u4f5c\u4e3a\u79fb\u52a8\u8bbe\u5907\u3002\n<ul>\n<li>\u53ef\u6709\u591a\u4e2a\u5206\u533a\uff0c\u5c06\u4e00\u5757\u78c1\u76d8\u903b\u8f91\u4e0a\u5212\u5206\u4e3a\u591a\u4e2a\u5757<\/li>\n<li>\u4f8b\u5982<code>\/dev\/sdb1<\/code>, <code>\/dev\/sdb2<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h1 id=\"\u5e38\u7528\u547d\u4ee4\">\u5e38\u7528\u547d\u4ee4<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u793a\u78c1\u76d8\u3001\u5206\u533a\u3001\u6302\u8f7d\u70b9\u7684\u6811\u72b6\u7ed3\u6784<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>lsblk -f  \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u67e5\u770b\u6240\u6709\u6302\u8f7d\u8bbe\u5907\u7684\u7a7a\u95f4\u4f7f\u7528\u60c5\u51b5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>df -h \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u521b\u5efa\u6302\u8f7d\u70b9\u76ee\u5f55<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sudo mkdir -p \/media\/user\/usb1    \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u521b\u5efa\u6302\u8f7d\u70b9\u76ee\u5f55<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sudo mount \/dev\/sdb1 \/media\/user\/usb1\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5378\u8f7d\u5206\u533a\uff08\u5b89\u5168\u5f39\u51faU\u76d8\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sudo umount \/media\/user\/usb1\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6216\u8005\u6839\u636e\u8bbe\u5907\u8def\u5f84<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sudo umount \/dev\/sdb1\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"linux\u79d8\u94a5\u767b\u5f55","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/454-ssh-key\/","pubDate":"Sun, 17 Aug 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/454-ssh-key\/","description":"<h2 id=\"1-\u80cc\u666f\u77e5\u8bc6\">1. \u80cc\u666f\u77e5\u8bc6<\/h2>\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0cSSH \u767b\u5f55\u9700\u8981\u8f93\u5165\u7528\u6237\u540d\u548c\u5bc6\u7801\uff0c\u66f4\u5b89\u5168\u7684\u65b9\u5f0f\u662f\u4f7f\u7528\u5bc6\u94a5\u5bf9\uff08\u516c\u94a5 + \u79c1\u94a5\uff09\u8fdb\u884c\u767b\u5f55<\/p>\n<ul>\n<li>\u79c1\u94a5 (private key)\uff1a\u5b58\u653e\u5728\u5ba2\u6237\u7aef\uff08\u4f60\u7684\u7535\u8111\uff09\u4e0a\uff0c\u4e0d\u53ef\u6cc4\u9732\u3002<\/li>\n<li>\u516c\u94a5 (public key)\uff1a\u5b58\u653e\u5728\u670d\u52a1\u5668\u4e0a\uff0c\u7528\u6765\u9a8c\u8bc1\u5bf9\u5e94\u7684\u79c1\u94a5\u3002<\/li>\n<\/ul>\n<p>\u6700\u5e38\u7528\u7684\u5bc6\u94a5\u7c7b\u578b\u662fRSA (Rivest\u2013Shamir\u2013Adleman)<\/p>"},{"title":"window\u7cfb\u7edf\u5feb\u901f\u5b89\u88c5ubuntu\u5b50\u7cfb\u7edf","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/500-wsl\/","pubDate":"Fri, 22 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/500-wsl\/","description":"<blockquote>\n<p>\u6700\u8fd1\u6709\u5728window\u7cfb\u7edf\u5b89\u88c5linux\u5b50\u7cfb\u7edf(WSL, <em>Windows<\/em> Subsystem for <em>Linux<\/em>)\u7684\u9700\u6c42\uff0c\u641c\u7d22\u53d1\u73b0Microsoft\u6700\u8fd1(4\u67088\u53f7)\u63d0\u4f9b\u4e86\u66f4\u52a0\u7b80\u4fbf\u7684\u5b89\u88c5\u65b9\u5f0f\u3002\u5728\u6b64\u8bb0\u5f55\u4e00\u4e0b\u5b89\u88c5\u8fc7\u7a0b\uff0c\u7684\u786e\u975e\u5e38\u7b80\u5355\u3002<\/p>"},{"title":"obabel\u5316\u5b66\u5c0f\u5206\u5b50\u683c\u5f0f\u8f6c\u6362","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/500-obabel\/","pubDate":"Sat, 16 Apr 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/500-obabel\/","description":"<ul>\n<li>conda \u5b89\u88c5<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>conda install -c conda-forge openbabel\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>obabel\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Open Babel 3.1.0 -- Nov  2 2021 -- 08:43:45<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u67e5\u770b\u652f\u6301\u7684\u683c\u5f0f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-shell\" data-lang=\"shell\"><span style=\"display:flex;\"><span>obabel -L\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># charges<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># descriptors<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fingerprints<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># forcefields<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># formats<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># loaders<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># ops<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>obabel -L formats | head\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># acesin -- ACES input format [Write-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># acesout -- ACES output format [Read-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># acr -- ACR format [Read-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># adf -- ADF cartesian input format [Write-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># adfband -- ADF Band output format [Read-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># adfdftb -- ADF DFTB output format [Read-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># adfout -- ADF output format [Read-only]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># alc -- Alchemy format<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># aoforce -- Turbomole AOFORCE output format [Read-only]<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\n<p>\u683c\u5f0f\u8f6c\u6362<\/p>"},{"title":"\u5316\u5408\u7269\u6307\u7eb9\u4e0e\u63cf\u8ff0\u7b26\u751f\u6210\u7cfb\u5217\u5de5\u5177","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/501-molecular-fingerprints\/","pubDate":"Mon, 20 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/501-molecular-fingerprints\/","description":"<h1 id=\"1rdkit\">1\u3001rdkit<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># conda install -c conda-forge rdkit<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> rdkit <span style=\"color:#fff;font-weight:bold\">import<\/span> Chem\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> rdkit.Chem <span style=\"color:#fff;font-weight:bold\">import<\/span> MACCSkeys\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> rdkit <span style=\"color:#fff;font-weight:bold\">import<\/span> DataStructs\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> rdkit.Chem <span style=\"color:#fff;font-weight:bold\">import<\/span> Draw\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"11-\u6307\u7eb9\u7f16\u7801\u5f0f\">1.1 \u6307\u7eb9\u7f16\u7801\u5f0f<\/h2>\n<ul>\n<li>\uff081\uff09Topological Fingerprints<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>m = Chem.MolFromSmiles(<span style=\"color:#0ff;font-weight:bold\">&#39;CCOC&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Chem.MolToSmiles(mol)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>fp = Chem.RDKFingerprint(m, fpSize=<span style=\"color:#ff0;font-weight:bold\">1024<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fpSize \u81ea\u5b9a\u4e49\u6570\u76ee,\u9ed8\u8ba4\u4e3a2048<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>fp.GetNumBits()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1024<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>fp.ToBitString()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220618214401457.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220618214401457.png\" alt=\"image-20220618214401457\"  \/>\n<\/p>"},{"title":"docker\u521d\u5b66","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/501-docker\/","pubDate":"Sat, 14 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/501-docker\/","description":"<h1 id=\"docker\u4ecb\u7ecd\">docker\u4ecb\u7ecd<\/h1>\n<ul>\n<li>docker\u53ef\u4ee5\u7406\u89e3\u4e3a\u8f7b\u91cf\u7ea7\u7684\u865a\u62df\u673a\uff0c\u521b\u5efa\u4e00\u4e2a\u72ec\u7acb\u7684\u73af\u5883\uff0c\u5e94\u7528\u4e8e\u7279\u5b9a\u7684\u5206\u6790\u6d41\u7a0b\u3002<\/li>\n<li>docker\u7684<strong>\u955c\u50cf<\/strong>\u662f\u4e00\u4e2a\u5b9a\u5236\u7684\u73af\u5883\u6a21\u677f\uff0c\u800c<strong>\u5bb9\u5668<\/strong>\u5219\u662f\u955c\u50cf\u5b9e\u4f8b\u5316\u800c\u5f97\u5230\u7684\uff0c\u53ef\u4f9b\u5b9e\u9645\u5206\u6790\u7684\u201c\u865a\u62df\u673a\u201d<\/li>\n<li>\u53ef\u4ee5\u81ea\u5df1\u7f16\u8f91dockfile\u521b\u5efa\u4e00\u4e2a\u955c\u50cf\uff0c\u6216\u8005\u4e0b\u8f7d\u5b89\u88c5\u522b\u4eba\u5199\u597d\u7684\u955c\u50cf(Docker Hub)\u3002<\/li>\n<\/ul>\n<img src=\"https:\/\/docs.docker.com\/engine\/images\/architecture.svg\" alt=\"Docker overview | Docker Documentation\" style=\"zoom:50%;\" \/>\n<ul>\n<li>\n<p>docker\u7684\u5b89\u88c5\u3001\u4f7f\u7528\u9700\u8981sudo\u6743\u9650\uff1b\u4f46\u540e\u7eed\u4f7f\u7528\u53ef\u901a\u8fc7\u4e0b\u8ff0\u547d\u4ee4\u4f7f\u666e\u901a\u7528\u6237\u53ef\u4ee5\u4f7f\u7528docker\u547d\u4ee4<\/p>"},{"title":"\u5316\u5408\u7269\u654f\u611f\u5ea6\u6570\u636e\u5e93GDSC_CTRL","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/502-gdsc\/","pubDate":"Sun, 09 Oct 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/502-gdsc\/","description":"<h2 id=\"\u4e00gdsc\">\u4e00\u3001GDSC<\/h2>\n<p>GDSC : <a href=\"https:\/\/www.cancerrxgene.org\/\">https:\/\/www.cancerrxgene.org\/<\/a>\uff0c\u5df2\u4e0a\u4f20\u81f3\u963f\u91cc\u4e91\u76d8<\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20221009090318241.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20221009090318241.png\" alt=\"image-20221009090318241\"  \/>\n<\/p>"},{"title":"\u5728Linux\u7cfb\u7edf\u91cc\u90e8\u7f72Jupyter\u73af\u5883","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/502-jupyter-linux\/","pubDate":"Sun, 15 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/502-jupyter-linux\/","description":"<blockquote>\n<p>\u4e4b\u524d\u5c31\u4e86\u89e3\u8fc7Jupyter notebook\uff0c\u662f\u8c03\u8bd5python\u4ee3\u7801\u7684\u7b80\u6d01\u3001\u9ad8\u6548\u8f6f\u4ef6\u3002\u73b0\u5728\u5927\u81f4\u6574\u7406\u4e0b\u76ee\u524d\u5b66\u5230\u7684\u5728Linux\u7cfb\u7edf\u91cc\u90e8\u7f72Jupyter\u73af\u5883\u7684\u5c0f\u6d41\u7a0b\uff0c\u4ee5\u4f9b\u4e4b\u540e\u81ea\u5df1\u5b66\u4e60python\u53ca\u76f8\u5173\u5206\u6790\u65f6\u4f7f\u7528\u3002<\/p>"},{"title":"ChemmineR\u5904\u7406\u5316\u5408\u7269\u4fe1\u606f\u7684\u57fa\u7840\u5de5\u5177R\u5305","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/503-chemminer\/","pubDate":"Thu, 20 Jul 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/503-chemminer\/","description":"<blockquote>\n<p>ChemmineR\u662f\u4f7f\u7528R\u8bed\u8a00\u5b9e\u73b0\u5316\u5408\u7269\u57fa\u7840\u64cd\u4f5c\u7684\u5de5\u5177\u5305\uff0c\u73b0\u6839\u636e\u5176\u5b98\u65b9\u6587\u6863\u5b66\u4e60\u5176\u4e3b\u8981\u7528\u6cd5\u5982\u4e0b\uff1a<\/p>\n<ul>\n<li><a href=\"https:\/\/www.bioconductor.org\/packages\/release\/bioc\/vignettes\/ChemmineR\/inst\/doc\/ChemmineR.html\">https:\/\/www.bioconductor.org\/packages\/release\/bioc\/vignettes\/ChemmineR\/inst\/doc\/ChemmineR.html<\/a><\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20230720110642101.png --><\/blockquote>\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20230720110642101.png\" alt=\"image-20230720110642101\" style=\"zoom:50%;\" \/>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">if<\/span> (!requireNamespace(<span style=\"color:#0ff;font-weight:bold\">&#34;BiocManager&#34;<\/span>, quietly=<span style=\"color:#fff;font-weight:bold\">TRUE<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>    install.packages(<span style=\"color:#0ff;font-weight:bold\">&#34;BiocManager&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>BiocManager::install(<span style=\"color:#0ff;font-weight:bold\">&#34;ChemmineR&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>library(<span style=\"color:#0ff;font-weight:bold\">&#34;ChemmineR&#34;<\/span>) \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># library(&#34;ChemmineOB&#34;)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1-sdfset\u683c\u5f0f\">1. SDFset\u683c\u5f0f<\/h2>\n<ul>\n<li>ChemmineR\u57fa\u7840\u64cd\u4f5c\u662f\u56f4\u7ed5SDFset\u5bf9\u8c61\u5c55\u5f00\u7684\uff0c\u5176\u8868\u793a\u591a\u4e2aSDF\u683c\u5f0f\u7684\u5316\u5408\u7269\u96c6\u5408<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>data(sdfsample)\n<\/span><\/span><span style=\"display:flex;\"><span>sdfset = sdfsample\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># valid &lt;- validSDF(sdfset)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># sdfset &lt;- sdfset[valid]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>class(sdfset)  <span style=\"color:#007f7f\"># SDFset<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>length(sdfset) <span style=\"color:#007f7f\"># 100<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>c(sdfset[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>], sdfset[5:<span style=\"color:#ff0;font-weight:bold\">8<\/span>]) <span style=\"color:#007f7f\"># \u5408\u5e76<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sdfset[1:<span style=\"color:#ff0;font-weight:bold\">4<\/span>]    <span style=\"color:#007f7f\"># \u5b50\u96c6<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u6bcf\u4e2aSDFset\u96c6\u5408\u662f\u7531\u5355\u4e2aSDF\u5bf9\u8c61\u7ec4\u6210\u7684\uff0c\u4e3b\u8981\u75314\u90e8\u5206\u6784\u6210\n<ul>\n<li>&lt;&lt;header&raquo; : \u5316\u5408\u7269id\u7b49\u57fa\u672c\u4fe1\u606f<\/li>\n<li>&lt;&lt;atomblock&raquo; : \u539f\u5b50\u4fe1\u606f\uff0c&lt;&lt;bondblock&raquo;:  \u952e\u4fe1\u606f<\/li>\n<li>&lt;&lt;datablock&raquo; : \u5316\u5408\u7269\u7684\u5c5e\u6027\/\u5176\u5b83\u6ce8\u91ca\u4fe1\u606f<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>sdfset[[1]]\n<\/span><\/span><span style=\"display:flex;\"><span>as(sdfset[[1]], <span style=\"color:#0ff;font-weight:bold\">&#34;list&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## ID<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>cid(sdfset[1:<span style=\"color:#ff0;font-weight:bold\">2<\/span>])       <span style=\"color:#007f7f\"># slot ID<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>sdfid(sdfset[1:<span style=\"color:#ff0;font-weight:bold\">2<\/span>])     <span style=\"color:#007f7f\"># header ID<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>cid(sdfset) =  sdfid(sdfset)  \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## Component<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>header(sdfset[[1]])    <span style=\"color:#007f7f\"># character<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>atomblock(sdfset[[1]]) <span style=\"color:#007f7f\"># matrix<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>bondblock(sdfset[[1]]) <span style=\"color:#007f7f\"># matrix<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>datablock(sdfset[[1]]) <span style=\"color:#007f7f\"># character<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>blockmatrix = datablock2ma(datablock(sdfset[1:<span style=\"color:#ff0;font-weight:bold\">2<\/span>])) \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u8865\u5145\uff1aChemmineR\u63d0\u4f9b\u4e00\u4e9b\u51fd\u6570\u53ef\u8ba1\u7b97\u5316\u5408\u7269\u7684\u57fa\u672c\u5c5e\u6027\u4fe1\u606f\uff0c\u4f8b\u5982\u5206\u5b50\u91cf\u7b49\u3002\u6b64\u5916ChemmineOB\u4e5f\u53ef\u4ee5\u5b9e\u73b0\u7c7b\u4f3c\u529f\u80fd\u3002<\/p>"},{"title":"Linux\u7684parallel\u5e76\u884c\u65b9\u6cd5","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/503-linux-parallel\/","pubDate":"Sun, 15 May 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/503-linux-parallel\/","description":"<blockquote>\n<p>\u6211\u5bf9\u4e8eparallel\u5e76\u884c\u7684\u7b80\u5355\u7406\u89e3\u5373\u540c\u65f6\u6267\u884c\u591a\u4e2a\u547d\u4ee4\u8bed\u53e5\u3002\u5c3d\u7ba1\u76ee\u524d\u5f88\u591a\u751f\u4fe1\u8f6f\u4ef6\u652f\u6301\u591a\u7ebf\u7a0b\u8fd0\u884c(\u4e00\u6761\u547d\u4ee4\u8bed\u53e5\u5185)\uff0c\u4f46\u5e76\u4e0d\u662f\u8bbe\u7f6e\u7684\u8d8a\u591a\u5c31\u8d8a\u5feb\uff0c\u6bd4\u5982trim_galore\u547d\u4ee4\u5efa\u8bae\u5bf9\u4e8e\u4e00\u5bf9fastq\u6587\u4ef6\uff0c\u4e0d\u8d85\u8fc78\u4e2a\u7ebf\u7a0b\u3002\u56e0\u6b64\uff0c\u5982\u679c\u6709\u591a\u4e2a\u6587\u4ef6\u9700\u8981\u5904\u7406\uff0c\u60f3\u5c3d\u53ef\u80fd\u5229\u7528\u8ba1\u7b97\u673a\u51e0\u5341\u4e2a\u7ebf\u7a0b\u7684\u8d44\u6e90\uff0c\u53ef\u4ee5\u4f7f\u7528<strong>parallel<\/strong>\u3002<\/p>"},{"title":"Shell_Python_R\u811a\u672c\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/504-scripting\/","pubDate":"Sat, 25 Mar 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/504-scripting\/","description":"<h1 id=\"1shell\u811a\u672c\">1\u3001shell\u811a\u672c<\/h1>\n<h2 id=\"11-\u811a\u672c\u6267\u884c\">1.1 \u811a\u672c\u6267\u884c<\/h2>\n<ul>\n<li>\n<p>\uff081\uff09\u547d\u4ee4\u884c\u76f4\u63a5\u6267\u884c<\/p>\n<p>\u5982\u4e0b\u793a\u4f8b\uff1a\u811a\u672c\u7b2c\u4e00\u884c\u8bbe\u7f6e\u811a\u672c\u89e3\u91ca\u5668\u7684\u8def\u5f84\uff0c\u5982\u5199\u9519\u6216\u6ca1\u5199\uff0c\u7cfb\u7edf\u4f1a\u8c03\u7528\u9ed8\u8ba4\u89e3\u91ca\u5668\u6267\u884c\u3002\u7136\u540e\u5728\u8fd0\u884c\u811a\u672c\u65f6\uff0c\u9700\u8981\u5148\u8d4b\u4e88\u53ef\u6267\u884c\u6743\u9650\u3002\uff08\u4e0b\u540c\uff09<\/p>"},{"title":"Json\u6587\u4ef6\u683c\u5f0f","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/505-json\/","pubDate":"Tue, 05 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/505-json\/","description":"<ul>\n<li>JSON (JavaScript Object Notation)\uff1a\u4e00\u79cd\u8f7b\u91cf\u7ea7\u7684\u6570\u636e\u4ea4\u6362\u683c\u5f0f\uff0c\u6613\u4e8e\u4eba\u7c7b\u9605\u8bfb\u548c\u7f16\u5199\uff0c\u540c\u65f6\u4e5f\u6613\u4e8e\u673a\u5668\u89e3\u6790\u548c\u751f\u6210\u3002\u5b83\u5e7f\u6cdb\u7528\u4e8e\u7f51\u7edc\u6570\u636e\u4f20\u8f93\u548c<strong>\u914d\u7f6e\u6587\u4ef6<\/strong>\u3002<\/li>\n<li>JSON\u7684\u6574\u4f53\u662f\u7531\u82b1\u62ec\u53f7<code>{}<\/code>\u5b9a\u4e49\u7684\u952e\u503c\u5bf9\uff0c\u503c\u5305\u62ec\u5b57\u7b26\u4e32\u3001\u6570\u5b57\u3001\u5e03\u5c14\u503c\u3001\u5bf9\u8c61\u3001\u6570\u7ec4\u548c <code>null<\/code><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-json\" data-lang=\"json\"><span style=\"display:flex;\"><span>{\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"font-weight:bold\">&#34;name&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;Alice&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"font-weight:bold\">&#34;age&#34;<\/span>: <span style=\"color:#ff0;font-weight:bold\">30<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"font-weight:bold\">&#34;isStudent&#34;<\/span>: <span style=\"color:#fff;font-weight:bold\">false<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"font-weight:bold\">&#34;fruit&#34;<\/span>: [<span style=\"color:#0ff;font-weight:bold\">&#34;apple&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;banana&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;cherry&#34;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>  <span style=\"font-weight:bold\">&#34;birthday&#34;<\/span>: {\n<\/span><\/span><span style=\"display:flex;\"><span>      <span style=\"font-weight:bold\">&#34;year&#34;<\/span>: <span style=\"color:#ff0;font-weight:bold\">2000<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>      <span style=\"font-weight:bold\">&#34;month&#34;<\/span>: <span style=\"color:#ff0;font-weight:bold\">12<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>      <span style=\"font-weight:bold\">&#34;day&#34;<\/span>: <span style=\"color:#fff;font-weight:bold\">null<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>  }\n<\/span><\/span><span style=\"display:flex;\"><span>}\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u5728python\u4e2d\uff0c\u53ef\u4f7f\u7528json\u5e93\u9ad8\u6548\u5904\u7406json\u683c\u5f0f\uff1a\n<ul>\n<li>\u952e\u503c\u5bf9\uff08\u5bf9\u8c61\uff09 \u2192 Python\u5b57\u5178<\/li>\n<li>\u5e03\u5c14\u503c<code>true\/false<\/code> \u2192 Python <code>True\/False<\/code><\/li>\n<li>\u6570\u7ec4 \u2192 Python \u5217\u8868list<\/li>\n<li><code>null<\/code> \u2192 Python <code>None<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> json\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-json\u5bf9\u8c61\">1. json\u5bf9\u8c61<\/h1>\n<ul>\n<li><strong>json\u5bf9\u8c61 \u2192 Python\u5b57\u5178<\/strong><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># JSON \u5b57\u7b26\u4e32<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>json_str = <span style=\"color:#0ff;font-weight:bold\">&#39;{&#34;name&#34;: &#34;Alice&#34;, &#34;age&#34;: 30, &#34;isStudent&#34;: false}&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u89e3\u6790 JSON<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data = json.loads(json_str)\n<\/span><\/span><span style=\"display:flex;\"><span>data.items()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dict_items([(&#39;name&#39;, &#39;Alice&#39;), (&#39;age&#39;, 30), (&#39;isStudent&#39;, False)])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#0ff;font-weight:bold\">&#39;birth&#39;<\/span>] = {<span style=\"color:#0ff;font-weight:bold\">&#34;year&#34;<\/span>:<span style=\"color:#ff0;font-weight:bold\">2000<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;month&#39;<\/span>:<span style=\"color:#ff0;font-weight:bold\">12<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;day&#34;<\/span>:<span style=\"color:#fff;font-weight:bold\">None<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>data[<span style=\"color:#0ff;font-weight:bold\">&#39;like&#39;<\/span>] = [<span style=\"color:#0ff;font-weight:bold\">&#39;apple&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;banana&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;cherry&#39;<\/span>]\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>**Python\u5b57\u5178 \u2192 json\u5bf9\u8c61 **<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>json_str = json.dumps(data)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(json_str)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#34;name&#34;: &#34;Alice&#34;, &#34;age&#34;: 30, &#34;isStudent&#34;: false, &#34;birth&#34;: {&#34;year&#34;: 2000, &#34;month&#34;: 12, &#34;day&#34;: null}, &#34;like&#34;: [&#34;apple&#34;, &#34;banana&#34;, &#34;cherry&#34;]}<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>json_str = json.dumps(data, indent=<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">print<\/span>(json_str)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     &#34;name&#34;: &#34;Alice&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     &#34;age&#34;: 30,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     &#34;isStudent&#34;: false,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     &#34;birth&#34;: {<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;year&#34;: 2000,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;month&#34;: 12,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;day&#34;: null<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     },<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     &#34;like&#34;: [<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;apple&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;banana&#34;,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         &#34;cherry&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     ]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># }<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2-json\u6587\u4ef6\">2. json\u6587\u4ef6<\/h1>\n<ul>\n<li><strong>\u4fdd\u5b58python\u5b57\u5178\u4e3ajson\u6587\u4ef6<\/strong><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">with<\/span> <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;demo.json&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;w&#39;<\/span>) <span style=\"color:#fff;font-weight:bold\">as<\/span> file:\n<\/span><\/span><span style=\"display:flex;\"><span>    json.dump(data, file, indent=<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li><strong>\u8bfb\u53d6json\u6587\u4ef6\u4e3apython\u5b57\u5178<\/strong><\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">with<\/span> <span style=\"color:#fff;font-weight:bold\">open<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;demo.json&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;r&#39;<\/span>) <span style=\"color:#fff;font-weight:bold\">as<\/span> file:\n<\/span><\/span><span style=\"display:flex;\"><span>    data = json.load(file)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"MySQL\u521d\u5b66","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/600-mysql\/","pubDate":"Sat, 22 Oct 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/600-mysql\/","description":"<blockquote>\n<p>MySQL\u662f\u4e00\u4e2a\u5e38\u7528\u7684\u6570\u636e\u5e93\u7ba1\u7406\u7cfb\u7edf\uff0c\u5173\u4e8e\u6570\u636e\u5e93\u53ef\u4ee5\u7b80\u5355\u7406\u89e3\u591a\u4e2a\u6709\u5173\u8054\u7684\u4e8c\u7ef4\u8868\u7ec4\u6210\u3002<\/p>\n<p>\u5176\u4e2dSQL(Structured Query Language)\u6307\u64cd\u4f5c\u5173\u7cfb\u578b\u6570\u636e\u5e93\u7684\u7f16\u7a0b\u8bed\u8a00\u3002<\/p>"},{"title":"Adobe Illustrator\u5feb\u901f\u5165\u95e8","link":"https:\/\/lishensuo.github.io\/en\/posts\/program\/601-illustrator\/","pubDate":"Sat, 04 Oct 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/program\/601-illustrator\/","description":"<p>Adobe Illustrator (AI)<\/p>\n<ul>\n<li>\n<p><strong>\u77e2\u91cf<\/strong>\u56fe\u8f6f\u4ef6\uff1a\u548c Photoshop\uff08\u4f4d\u56fe\uff09\u4e0d\u540c\uff0cAI \u7ed8\u5236\u7684\u56fe\u5f62\u653e\u5927\u4e0d\u4f1a\u5931\u771f\u3002<\/p>\n<\/li>\n<li>\n<p><strong>\u5bf9\u8c61\u5316<\/strong>\u601d\u7ef4\uff1a\u4f60\u753b\u7684\u6bcf\u4e2a\u56fe\u5f62\uff08\u77e9\u5f62\u3001\u7bad\u5934\u3001\u7ebf\u6761\u3001\u6587\u5b57\uff09\u90fd\u662f\u72ec\u7acb\u5bf9\u8c61\uff0c\u53ef\u4ee5\u968f\u65f6\u8c03\u6574\u5927\u5c0f\u3001\u989c\u8272\u3001\u7ebf\u6761\u7c97\u7ec6\u3002<\/p>"},{"title":"\u6df1\u5ea6\u5b66\u4e60D2L--01--\u7ebf\u6027\u56de\u5f52","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/701-d2l-linear\/","pubDate":"Sun, 31 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/701-d2l-linear\/","description":"<ul>\n<li>\u6df1\u5ea6\u5b66\u4e60\u7ec4\u6210\u8981\u7d20<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220731132558728.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220731132558728.png\" alt=\"image-20220731132558728\" style=\"zoom:80%;\" \/>\n<ul>\n<li>\u7ebf\u6027\u56de\u5f52\u53ef\u4ee5\u8ba4\u4e3a\u662f\u6700\u7b80\u5355\u7684\u4e00\u5c42\u6df1\u5ea6\u795e\u7ecf\u7f51\u7edc<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220731133150401.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220731133150401.png\" alt=\"image-20220731133150401\"  \/>\n<h1 id=\"\u4e00\u4ece\u96f6\u5b9e\u73b0\">\u4e00\u3001\u4ece\u96f6\u5b9e\u73b0<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> random\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"1\u793a\u4f8b\u6570\u636e\">1\u3001\u793a\u4f8b\u6570\u636e<\/h2>\n<p>\u6a21\u62df\u6837\u672c\u7279\u5f81\u4e0e\u6807\u7b7e\u6570\u636e\uff0c\u5e76\u5206\u6210\u5c0f\u6279\u91cf\u4f20\u5165<\/p>"},{"title":"\u6df1\u5ea6\u5b66\u4e60D2L--02--softmax\u591a\u5206\u7c7b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/702-d2l-softmax\/","pubDate":"Sun, 31 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/702-d2l-softmax\/","description":"<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220731205814540.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220731205814540.png\" alt=\"image-20220731205814540\"  \/>\n<\/p>"},{"title":"\u6df1\u5ea6\u5b66\u4e60D2L--03--K\u6298\u4ea4\u53c9\u9a8c\u8bc1\u7684torch\u8bad\u7ec3\u57fa\u7840\u6d41\u7a0b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/703-d2l-pytorch\/","pubDate":"Tue, 23 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/703-d2l-pytorch\/","description":"<h1 id=\"1\u52a0\u8f7d\u5e93\">1\u3001\u52a0\u8f7d\u5e93<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> torch <span style=\"color:#fff;font-weight:bold\">import<\/span> nn\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> torch.nn <span style=\"color:#fff;font-weight:bold\">import<\/span> functional <span style=\"color:#fff;font-weight:bold\">as<\/span> F\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> torch.utils <span style=\"color:#fff;font-weight:bold\">import<\/span> data\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> itertools\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2\u793a\u4f8b\u6570\u636e\">2\u3001\u793a\u4f8b\u6570\u636e<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># http:\/\/d2l-data.s3-accelerate.amazonaws.com\/kaggle_house_pred_train.csv<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># http:\/\/d2l-data.s3-accelerate.amazonaws.com\/kaggle_house_pred_test.csv<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>train_data = pd.read_csv(<span style=\"color:#0ff;font-weight:bold\">&#34;..\/data\/kaggle_house_pred_train.csv&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>test_data = pd.read_csv(<span style=\"color:#0ff;font-weight:bold\">&#34;..\/data\/kaggle_house_pred_test.csv&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>train_data.shape, test_data.shape\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>all_features = pd.concat((train_data.iloc[:, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:-<span style=\"color:#ff0;font-weight:bold\">1<\/span>], test_data.iloc[:, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:]))\n<\/span><\/span><span style=\"display:flex;\"><span>num_features = all_features.dtypes[all_features.dtypes != <span style=\"color:#0ff;font-weight:bold\">&#34;object&#34;<\/span>].index\n<\/span><\/span><span style=\"display:flex;\"><span>all_features[num_features] = all_features[num_features].apply(\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">lambda<\/span> x: (x - x.mean()) \/ (x.std())\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><span style=\"display:flex;\"><span>all_features[num_features] = all_features[num_features].fillna(<span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>all_features = pd.get_dummies(all_features, dummy_na=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>all_features.shape\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>n_train = train_data.shape[<span style=\"color:#ff0;font-weight:bold\">0<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>train_feats = torch.tensor(all_features[:n_train].values, dtype=torch.float32)\n<\/span><\/span><span style=\"display:flex;\"><span>test_feats = torch.tensor(all_features[n_train:].values, dtype=torch.float32)\n<\/span><\/span><span style=\"display:flex;\"><span>train_labels = torch.tensor(train_data.SalePrice.values.reshape((-<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>)), dtype=torch.float32)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3\u5b9a\u4e49\u6a21\u578b\u6846\u67b6\">3\u3001\u5b9a\u4e49\u6a21\u578b\u6846\u67b6<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">class<\/span> MLP(nn.Module):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">def<\/span> __init__(<span style=\"color:#fff;font-weight:bold\">self<\/span>, in_feats, hidden_feats, dropout):\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">super<\/span>().__init__()\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">self<\/span>.hidden = nn.Linear(in_feats, hidden_feats)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">self<\/span>.out = nn.Linear(hidden_feats, <span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">self<\/span>.dropout = nn.Dropout(dropout)\n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">def<\/span> forward(<span style=\"color:#fff;font-weight:bold\">self<\/span>, X):\n<\/span><\/span><span style=\"display:flex;\"><span>        hiddens = F.relu(<span style=\"color:#fff;font-weight:bold\">self<\/span>.hidden(X))\n<\/span><\/span><span style=\"display:flex;\"><span>        output = <span style=\"color:#fff;font-weight:bold\">self<\/span>.out(<span style=\"color:#fff;font-weight:bold\">self<\/span>.dropout(hiddens))\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">return<\/span> output\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"torch\u6a21\u578b\u57fa\u7840\">torch\u6a21\u578b\u57fa\u7840<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">44\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>model = MLP(<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>model\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u67e5\u770btorch\u9ed8\u8ba4\u521d\u59cb\u5316\u7684\u6bcf\u4e00\u5c42\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>model.state_dict()\n<\/span><\/span><span style=\"display:flex;\"><span>model.state_dict().keys()\n<\/span><\/span><span style=\"display:flex;\"><span>model.state_dict()[<span style=\"color:#0ff;font-weight:bold\">&#39;hidden.bias&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model.hidden.bias.data\n<\/span><\/span><span style=\"display:flex;\"><span>model.out.weight.grad == <span style=\"color:#fff;font-weight:bold\">None<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u81ea\u5b9a\u4e49\u6a21\u578b\u53c2\u6570\u521d\u59cb\u5316\u65b9\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> init_normal(m):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#fff;font-weight:bold\">type<\/span>(m) == nn.Linear:\n<\/span><\/span><span style=\"display:flex;\"><span>        nn.init.normal_(m.weight, mean=<span style=\"color:#ff0;font-weight:bold\">0<\/span>, std=<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>        nn.init.zeros_(m.bias)\n<\/span><\/span><span style=\"display:flex;\"><span>model.apply(init_normal)\n<\/span><\/span><span style=\"display:flex;\"><span>model.state_dict()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> xvaier(m):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#fff;font-weight:bold\">type<\/span>(m) == nn.Linear:\n<\/span><\/span><span style=\"display:flex;\"><span>        nn.init.xavier_uniform_(m.weight)\n<\/span><\/span><span style=\"display:flex;\"><span>model.apply(xvaier)\n<\/span><\/span><span style=\"display:flex;\"><span>model.state_dict()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#\u4fdd\u5b58\u4e0e\u52a0\u8f7d\u6a21\u578b\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.save(model.state_dict(), <span style=\"color:#0ff;font-weight:bold\">&#34;mlp.params&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>new_model = MLP(<span style=\"color:#ff0;font-weight:bold\">10<\/span>, <span style=\"color:#ff0;font-weight:bold\">6<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>new_model.load_state_dict(torch.load(<span style=\"color:#0ff;font-weight:bold\">&#34;mlp.params&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#GPU\u52a0\u901f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>nvidia-smi    <span style=\"color:#007f7f\">#\u67e5\u770b\u5f53\u524d\u7cfb\u7edf\u7684GPU\u60c5\u51b5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>watch -n <span style=\"color:#ff0;font-weight:bold\">0.1<\/span> -d nvidia-smi  <span style=\"color:#007f7f\">#\u52a8\u6001\u5237\u65b0\u67e5\u770b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.cuda.is_available()   <span style=\"color:#007f7f\">#\u662f\u5426\u6709GPU\u8d44\u6e90<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.cuda.device_count()   <span style=\"color:#007f7f\">#\u67e5\u770b\u53ef\u7528\u7684GPU\u6570\u91cf<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">##\u5c06\u6570\u636e\u4e0e\u6a21\u578b\u90fd\u8f6c\u79fb\u5230\u540c\u4e00\u4e2aGPU\u4e0a<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> try_gpu(i=<span style=\"color:#ff0;font-weight:bold\">0<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>\t<span style=\"color:#fff;font-weight:bold\">if<\/span> torch.cuda.device_count() &gt;= i + <span style=\"color:#ff0;font-weight:bold\">1<\/span> :\n<\/span><\/span><span style=\"display:flex;\"><span>\t\t<span style=\"color:#fff;font-weight:bold\">return<\/span> torch.device(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;cuda:<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>i<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\t<span style=\"color:#fff;font-weight:bold\">return<\/span> torch.device(<span style=\"color:#0ff;font-weight:bold\">&#34;cpu&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>X = torch.ones(<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, device = try_gpu(<span style=\"color:#ff0;font-weight:bold\">0<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model.to(<span style=\"color:#0ff;font-weight:bold\">&#34;cuda:0&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"4\u5b9a\u4e49\u635f\u5931\u51fd\u6570\u4e0e\u6027\u80fd\u8bc4\u4ef7\u65b9\u6cd5\">4\u3001\u5b9a\u4e49\u635f\u5931\u51fd\u6570\u4e0e\u6027\u80fd\u8bc4\u4ef7\u65b9\u6cd5<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>loss = nn.MSELoss()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> log_rmse(model, feature, labels):\n<\/span><\/span><span style=\"display:flex;\"><span>    clipped_preds = torch.clamp(model(feature), <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#fff;font-weight:bold\">float<\/span>(<span style=\"color:#0ff;font-weight:bold\">&#39;inf&#39;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>    rmse = torch.sqrt(loss(torch.log(clipped_preds),\n<\/span><\/span><span style=\"display:flex;\"><span>                          torch.log(labels)))\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> rmse.item()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"5\u5c0f\u6279\u91cf\u8bad\u7ec3\u6846\u67b6\">5\u3001\u5c0f\u6279\u91cf\u8bad\u7ec3\u6846\u67b6<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> load_array(data_arrays, batch_size, is_train=<span style=\"color:#fff;font-weight:bold\">True<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>    dataset = data.TensorDataset(*data_arrays)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> data.DataLoader(dataset, batch_size, shuffle=is_train)    \n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> train(model, train_feats, train_labels, test_feats, test_labels,\n<\/span><\/span><span style=\"display:flex;\"><span>          num_epochs, lr, weight_decay, batch_size):\n<\/span><\/span><span style=\"display:flex;\"><span>    train_ls, test_ls = [],[]  <span style=\"color:#007f7f\">#\u8bb0\u5f55\u6bcf\u4e00\u8f6eepoch\u7684\u8bad\u7ec3\u96c6\/\u6d4b\u8bd5\u96c6\u6027\u80fd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    train_iter = load_array((train_feats, train_labels), batch_size)\n<\/span><\/span><span style=\"display:flex;\"><span>    optimizer = torch.optim.Adam(model.parameters(),\n<\/span><\/span><span style=\"display:flex;\"><span>                                lr = lr,\n<\/span><\/span><span style=\"display:flex;\"><span>                                weight_decay=weight_decay)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">for<\/span> epoch in <span style=\"color:#fff;font-weight:bold\">range<\/span>(num_epochs):\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">for<\/span> X, y in train_iter:\n<\/span><\/span><span style=\"display:flex;\"><span>            optimizer.zero_grad()\n<\/span><\/span><span style=\"display:flex;\"><span>            l = loss(model(X), y)\n<\/span><\/span><span style=\"display:flex;\"><span>            l.backward()\n<\/span><\/span><span style=\"display:flex;\"><span>            optimizer.step()\n<\/span><\/span><span style=\"display:flex;\"><span>        train_ls.append(log_rmse(model, train_feats, train_labels))\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">if<\/span> test_labels is not <span style=\"color:#fff;font-weight:bold\">None<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>            test_ls.append(log_rmse(model, test_feats, test_labels))\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> train_ls, test_ls\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"6k\u6298\u4ea4\u53c9\u9a8c\u8bc1\">6\u3001K\u6298\u4ea4\u53c9\u9a8c\u8bc1<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> get_k_fold_data(k, i, X, y):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">assert<\/span> k &gt; <span style=\"color:#ff0;font-weight:bold\">1<\/span> \n<\/span><\/span><span style=\"display:flex;\"><span>    fold_size = X.shape[<span style=\"color:#ff0;font-weight:bold\">0<\/span>] \/\/ k\n<\/span><\/span><span style=\"display:flex;\"><span>    X_train, y_train = <span style=\"color:#fff;font-weight:bold\">None<\/span>, <span style=\"color:#fff;font-weight:bold\">None<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">for<\/span> j in <span style=\"color:#fff;font-weight:bold\">range<\/span>(k):\n<\/span><\/span><span style=\"display:flex;\"><span>        idx = <span style=\"color:#fff;font-weight:bold\">slice<\/span>(j*fold_size, (j+<span style=\"color:#ff0;font-weight:bold\">1<\/span>)*fold_size)\n<\/span><\/span><span style=\"display:flex;\"><span>        X_part, y_part = X[idx, :], y[idx]\n<\/span><\/span><span style=\"display:flex;\"><span>        \n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">if<\/span> j == i:\n<\/span><\/span><span style=\"display:flex;\"><span>            X_valid, y_valid = X_part, y_part\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">elif<\/span> X_train is <span style=\"color:#fff;font-weight:bold\">None<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>            X_train, y_train = X_part, y_part\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">else<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>            X_train = torch.cat([X_train, X_part], <span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>            y_train = torch.cat([y_train, y_part], <span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> X_train, y_train, X_valid, y_valid\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> k_fold(k, X_train, y_train, \n<\/span><\/span><span style=\"display:flex;\"><span>           num_epochs, learning_rate, weight_decay, batch_size,\n<\/span><\/span><span style=\"display:flex;\"><span>           in_feats, hidden_feats, dropout):\n<\/span><\/span><span style=\"display:flex;\"><span>    train_l_sum, valid_l_sum = <span style=\"color:#ff0;font-weight:bold\">0<\/span>,<span style=\"color:#ff0;font-weight:bold\">0<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">for<\/span> i in <span style=\"color:#fff;font-weight:bold\">range<\/span>(k):\n<\/span><\/span><span style=\"display:flex;\"><span>        data = get_k_fold_data(k, i, X_train, y_train)\n<\/span><\/span><span style=\"display:flex;\"><span>        model = MLP(in_feats, hidden_feats, dropout)\n<\/span><\/span><span style=\"display:flex;\"><span>        train_ls, valid_ls = train(model, *data, num_epochs, learning_rate, weight_decay, batch_size)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#007f7f\">#\u5c06\u6700\u540e\u4e00\u8f6e\u7684\u6027\u80fd\u4f5c\u4e3a\u8be5\u6a21\u578b\u7684\u6700\u7ec8\u6027\u80fd<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        train_l_sum += train_ls[-<span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>        valid_l_sum += valid_ls[-<span style=\"color:#ff0;font-weight:bold\">1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#007f7f\"># print(f&#39;Fold-{i+1}, train log rmse {float(train_ls[-1]):f},&#39;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#007f7f\">#      f&#39;valid log rmse {float(valid_ls[-1]):f}&#39;)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> train_l_sum \/ k, valid_l_sum \/ k\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># k, num_epochs, learning_rate, weight_decay, batch_size = 10, 100, 5, 0, 64<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># in_feats, hidden_feats, dropout = train_feats.shape[1], 64, 0.5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># train_l, valid_l = k_fold(k, train_feats, train_labels, <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                           num_epochs, learning_rate, weight_decay, batch_size,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#                           in_feats, hidden_feats, dropout)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"7\u8d85\u53c2\u6570\u904d\u5386\">7\u3001\u8d85\u53c2\u6570\u904d\u5386<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>k, num_epochs= <span style=\"color:#ff0;font-weight:bold\">5<\/span>, <span style=\"color:#ff0;font-weight:bold\">100<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>in_feats = [train_feats.shape[<span style=\"color:#ff0;font-weight:bold\">1<\/span>]]\n<\/span><\/span><span style=\"display:flex;\"><span>learning_rate = [<span style=\"color:#ff0;font-weight:bold\">0.1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">5<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>weight_decay = [<span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.001<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>batch_size = [<span style=\"color:#ff0;font-weight:bold\">32<\/span>, <span style=\"color:#ff0;font-weight:bold\">64<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>hidden_feats = [<span style=\"color:#ff0;font-weight:bold\">16<\/span>, <span style=\"color:#ff0;font-weight:bold\">64<\/span>, <span style=\"color:#ff0;font-weight:bold\">128<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>dropout = [<span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0.1<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>grid_iter = itertools.product(learning_rate, weight_decay, batch_size,\n<\/span><\/span><span style=\"display:flex;\"><span>                              in_feats, hidden_feats, dropout)\n<\/span><\/span><span style=\"display:flex;\"><span>len_grids = <span style=\"color:#fff;font-weight:bold\">len<\/span>(<span style=\"color:#fff;font-weight:bold\">list<\/span>(grid_iter))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>grid_train_l, grid_valid_l = [], []\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> j, args in <span style=\"color:#fff;font-weight:bold\">enumerate<\/span>(itertools.product(learning_rate, weight_decay, batch_size,\n<\/span><\/span><span style=\"display:flex;\"><span>                         in_feats, hidden_feats, dropout)):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>j+<span style=\"color:#ff0;font-weight:bold\">1<\/span><span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">--<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>len_grids<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">: <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>args<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    train_l, valid_l = k_fold(k, train_feats, train_labels, num_epochs, *args)\n<\/span><\/span><span style=\"display:flex;\"><span>    grid_train_l.append(train_l)\n<\/span><\/span><span style=\"display:flex;\"><span>    grid_valid_l.append(valid_l)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;---- valid rmse <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>valid_l<span style=\"color:#0ff;font-weight:bold\">:<\/span><span style=\"color:#0ff;font-weight:bold\">.2f<\/span><span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"\u6df1\u5ea6\u5b66\u4e60--VAE\u53d8\u5206\u81ea\u52a8\u7f16\u7801\u5668","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/704-vae\/","pubDate":"Tue, 21 Feb 2023 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/704-vae\/","description":"<blockquote>\n<p>\u81ea\u52a8\u7f16\u7801\u5668\uff08AE, autoencoder\uff09\u662f\u5e94\u7528\u795e\u7ecf\u7f51\u7edc\u8fdb\u884c\u6570\u636e\u964d\u7ef4\u7684\u6709\u6548\u65b9\uff0c\u5176\u7ed3\u6784\u5206\u4e3a\u7f16\u7801\u5668\uff08encoder\uff09\u4e0e\u89e3\u7801\u5668\uff08decoder\uff09\u4e24\u90e8\u5206\uff1b\u57fa\u4e8e\u635f\u5931\u51fd\u6570\u4f18\u5316\u4f7f\u6a21\u578b\u7684\u7f16\u7801\u5668\u8f93\u5165\u6570\u636e\u4e0e\u89e3\u7801\u5668\u8f93\u51fa\u6570\u636e\u5c3d\u53ef\u80fd\u76f8\u4e00\u81f4\u3002\u4e2d\u95f4\u5c42\u6570\u636e\u53ef\u89c6\u4e3a\u4f4e\u7ef4\u7ed3\u679c\u3002<\/p>"},{"title":"D2L--\u7b2c\u4e8c\u7ae0\u9884\u5907\u77e5\u8bc6","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/705-d2l-preliminaries\/","pubDate":"Sun, 21 Jul 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/705-d2l-preliminaries\/","description":"<h1 id=\"1-\u6570\u636e\u64cd\u4f5c\">1. \u6570\u636e\u64cd\u4f5c<\/h1>\n<h2 id=\"11-\u5165\u95e8\">1.1 \u5165\u95e8<\/h2>\n<ul>\n<li>\n<p><strong>\u5f20\u91cf<\/strong>\uff1a\u5177\u6709\u591a\u4e2a\u7ef4\u5ea6\uff08\u8f74\uff09\u7684\u6570\u7ec4\u3002<\/p>\n<p>\u5177\u6709\u4e00\u4e2a\u8f74\u7684\u5f20\u91cf\uff0c\u5bf9\u5e94\u6570\u5b66\u4e0a\u7684<strong>\u5411\u91cf<\/strong>\uff1b<\/p>\n<p>\u5177\u6709\u4e24\u4e2a\u8f74\u7684\u5f20\u91cf\uff0c\u5bf9\u5e94\u6570\u5b66\u4e0a\u7684<strong>\u77e9\u9635<\/strong>\u3002<\/p>\n<\/li>\n<li>\n<p><strong>\u521b\u5efa\u5f20\u91cf<\/strong><\/p>\n<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = torch.arange(<span style=\"color:#ff0;font-weight:bold\">12<\/span>) <span style=\"color:#007f7f\"># \u957f\u5ea6\u4e3a12\u4e2a\u884c\u5411\u91cf<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.zeros((<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>torch.ones((<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>torch.randn(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.tensor([[<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>],[<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>],[<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>]])\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u57fa\u672c\u4fe1\u606f<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x.shape\n<\/span><\/span><span style=\"display:flex;\"><span>x.numel <span style=\"color:#007f7f\">#\u5143\u7d20\u4e2a\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>X = x.reshape(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>) <span style=\"color:#007f7f\">#\u4fee\u6539\u5f62\u72b6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>x.reshape(-<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>x.reshape(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, -<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"12-\u8fd0\u7b97\u7b26\">1.2 \u8fd0\u7b97\u7b26<\/h2>\n<ul>\n<li>\u4efb\u610f\u4e24\u4e2a\u5f62\u72b6\u76f8\u540c\u7684\u5f20\u91cf\uff0c\u6267\u884c\u57fa\u672c\u8fd0\u7b97\u7b26\u65f6\uff0c\u5747\u4e3a<strong>\u6309\u5143\u7d20<\/strong>\u64cd\u4f5c\uff0c\u7ed3\u679c\u7684\u5f62\u72b6\u4e0d\u53d8\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = torch.tensor([<span style=\"color:#ff0;font-weight:bold\">1.0<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>y = torch.tensor([<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x-y, x+y, x*x, x\/y, x**y\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u5f20\u91cf\u8fde\u63a5\u64cd\u4f5cconcatenate<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = torch.arange(<span style=\"color:#ff0;font-weight:bold\">12<\/span>, dtype = torch.float32).reshape(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>y = torch.tensor([[<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>],[<span style=\"color:#ff0;font-weight:bold\">1<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">4<\/span>],[<span style=\"color:#ff0;font-weight:bold\">4<\/span>,<span style=\"color:#ff0;font-weight:bold\">3<\/span>,<span style=\"color:#ff0;font-weight:bold\">2<\/span>,<span style=\"color:#ff0;font-weight:bold\">1<\/span>]])\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.cat((x, y), dim = <span style=\"color:#ff0;font-weight:bold\">0<\/span>) <span style=\"color:#007f7f\">#\u7eb5\u5411\u62fc\u63a5\uff0c\u589e\u52a0\u8f740\u7684\u7ef4\u5ea6\/\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.cat((x, y), dim = <span style=\"color:#ff0;font-weight:bold\">1<\/span>) <span style=\"color:#007f7f\">#\u6a2a\u5411\u62fc\u63a5\uff0c\u589e\u52a0\u8f741\u7684\u7ef4\u5ea6\/\u5217<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u903b\u8f91\u8fd0\u7b97\u7b26\u6784\u5efa\u903b\u8f91\u5f20\u91cf<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>x == y\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"13-\u5e7f\u64ad\u673a\u5236\">1.3 \u5e7f\u64ad\u673a\u5236<\/h2>\n<ul>\n<li>\u5f62\u72b6\u4e0d\u540c\u7684\u4e24\u4e2a\u5f20\u91cf\u6267\u884c\u57fa\u672c\u8fd0\u7b97\u65f6\uff0c\u4f1a\u9002\u5f53\u590d\u5236\u5143\u7d20\u6269\u5c55\u6570\u7ec4\uff0c\u4f7f\u4e8c\u8005\u5177\u6709\u76f8\u540c\u5f62\u72b6\uff0c\u518d<strong>\u6309\u5143\u7d20<\/strong>\u8ba1\u7b97<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-R\" data-lang=\"R\"><span style=\"display:flex;\"><span>x = torch.arange(<span style=\"color:#ff0;font-weight:bold\">6<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>x + torch.tensor(<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>a = torch.arange(<span style=\"color:#ff0;font-weight:bold\">3<\/span>).reshape(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>b = torch.arange(<span style=\"color:#ff0;font-weight:bold\">2<\/span>).reshape(<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>a + b\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"14-\u7d22\u5f15\u5207\u7247\">1.4 \u7d22\u5f15\u5207\u7247<\/h2>\n<ul>\n<li>\u7c7b\u4f3cPython\u6570\u7ec4\u64cd\u4f5c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>X = torch.arange(<span style=\"color:#ff0;font-weight:bold\">12<\/span>).reshape(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>X[-<span style=\"color:#ff0;font-weight:bold\">1<\/span>]  <span style=\"color:#007f7f\">#\u6700\u540e\u4e00\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>X[<span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>] <span style=\"color:#007f7f\">#\u7b2c\u4e8c\u3001\u4e09\u884c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>X[:, <span style=\"color:#ff0;font-weight:bold\">1<\/span>:<span style=\"color:#ff0;font-weight:bold\">3<\/span>] <span style=\"color:#007f7f\">#\u7b2c\u4e8c\u3001\u4e09\u5217<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"15-\u8282\u7701\u5185\u5b58\">1.5 \u8282\u7701\u5185\u5b58<\/h2>\n<ul>\n<li>\u53d8\u91cf\u540d\u8d4b\u503c\u65b0\u7684\u8ba1\u7b97\u7ed3\u679c\u65f6\uff0c\u4f1a\u91cd\u65b0\u5206\u914d\u5185\u5b58<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>a = torch.tensor(<span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>before = <span style=\"color:#fff;font-weight:bold\">id<\/span>(a) <span style=\"color:#007f7f\">#\u5185\u5b58\u5730\u5740<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>a = a + torch.tensor(<span style=\"color:#ff0;font-weight:bold\">1<\/span>) <span style=\"color:#007f7f\"># \u91cd\u65b0\u5206\u914d\u5185\u5b58<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">id<\/span>(a) == before\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># False<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u539f\u5730\u66f4\u65b0\u3001\u8986\u76d6\u5148\u524d\u7684\u8ba1\u7b97\u7ed3\u679c<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>a = torch.tensor(<span style=\"color:#ff0;font-weight:bold\">0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>before = <span style=\"color:#fff;font-weight:bold\">id<\/span>(a) <span style=\"color:#007f7f\">#\u5185\u5b58\u5730\u5740<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>a[:] = a + torch.tensor(<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">id<\/span>(a) == before\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"16-\u8f6c\u4e3a\u5176\u5b83python\u5bf9\u8c61\">1.6 \u8f6c\u4e3a\u5176\u5b83Python\u5bf9\u8c61<\/h2>\n<ul>\n<li>\u8f6c\u4e3aNumpy\u6570\u7ec4<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>A = X.numpy() <span style=\"color:#007f7f\"># tensor\u2192numpy<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.tensor(A) <span style=\"color:#007f7f\"># numpy\u2192tensor<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u5927\u5c0f\u4e3a1\u7684\u5f20\u91cf\u8f6c\u4e3aPython\u6807\u91cf<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>a = torch.tensor(<span style=\"color:#ff0;font-weight:bold\">3.0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>a.item()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">float<\/span>(a)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">int<\/span>(a)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2-\u6570\u636e\u9884\u5904\u7406\">2. \u6570\u636e\u9884\u5904\u7406<\/h1>\n<h2 id=\"21-\u8bfb\u53d6\u6570\u636e\u96c6\">2.1 \u8bfb\u53d6\u6570\u636e\u96c6<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> os\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> pandas <span style=\"color:#fff;font-weight:bold\">as<\/span> pd\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>os.makedirs(os.path.join(<span style=\"color:#0ff;font-weight:bold\">&#39;..&#39;<\/span>,<span style=\"color:#0ff;font-weight:bold\">&#39;data&#39;<\/span>), exist_ok=<span style=\"color:#fff;font-weight:bold\">True<\/span>) <span style=\"color:#007f7f\">#\u4e0a\u4e00\u7ea7\u76ee\u5f55\u521b\u5efadata\u6587\u4ef6\u5939<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data_file = os.path.join(<span style=\"color:#0ff;font-weight:bold\">&#39;..&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;data&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;house_tiny.csv&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">with<\/span> <span style=\"color:#fff;font-weight:bold\">open<\/span>(data_file, <span style=\"color:#0ff;font-weight:bold\">&#39;w&#39;<\/span>) <span style=\"color:#fff;font-weight:bold\">as<\/span> f:\n<\/span><\/span><span style=\"display:flex;\"><span>    f.write(<span style=\"color:#0ff;font-weight:bold\">&#39;NumRooms,Alley,Price<\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>) <span style=\"color:#007f7f\">#\u5217\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    f.write(<span style=\"color:#0ff;font-weight:bold\">&#39;NA,Pave,127500<\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>) <span style=\"color:#007f7f\">#\u6bcf\u884c\u4e00\u4e2a\u6837\u672c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    f.write(<span style=\"color:#0ff;font-weight:bold\">&#39;2,NA,106000<\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    f.write(<span style=\"color:#0ff;font-weight:bold\">&#39;4,NA,178100<\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>    f.write(<span style=\"color:#0ff;font-weight:bold\">&#39;NA,NA,140000<\/span><span style=\"color:#0ff;font-weight:bold\">\\n<\/span><span style=\"color:#0ff;font-weight:bold\">&#39;<\/span>)    \n<\/span><\/span><span style=\"display:flex;\"><span>    \n<\/span><\/span><span style=\"display:flex;\"><span>data = pd.read_csv(data_file)\n<\/span><\/span><span style=\"display:flex;\"><span>data\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"22-\u5904\u7406\u7f3a\u5931\u503c\">2.2 \u5904\u7406\u7f3a\u5931\u503c<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">9\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>inputs, outputs = data.iloc[:, <span style=\"color:#ff0;font-weight:bold\">0<\/span>:<span style=\"color:#ff0;font-weight:bold\">2<\/span>], data.iloc[:, <span style=\"color:#ff0;font-weight:bold\">2<\/span>] <span style=\"color:#007f7f\">#\u6309\u5217\u62c6\u5206\u4e3a\u4e24\u4e2a\u8868<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6570\u503c\u7f3a\u5931\u503c\u586b\u5145<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>inputs = inputs.fillna(inputs.mean(numeric_only=<span style=\"color:#fff;font-weight:bold\">True<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>inputs\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u7c7b\u522b\u7f3a\u5931\u503c\u586b\u5145<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>inputs = pd.get_dummies(inputs, dummy_na=<span style=\"color:#fff;font-weight:bold\">True<\/span>, dtype = <span style=\"color:#fff;font-weight:bold\">float<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>inputs\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"23-\u8f6c\u6362\u4e3a\u5f20\u91cf\">2.3 \u8f6c\u6362\u4e3a\u5f20\u91cf<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span>X, y = torch.tensor(inputs.values), torch.tensor(outputs.values)\n<\/span><\/span><span style=\"display:flex;\"><span>X, y\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6df1\u5ea6\u5b66\u4e60\u901a\u5e38\u7528float32<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3-\u7ebf\u6027\u4ee3\u6570\">3. \u7ebf\u6027\u4ee3\u6570<\/h1>\n<h2 id=\"31-\u6807\u91cf\">3.1 \u6807\u91cf<\/h2>\n<ul>\n<li>\u53ea\u6709\u4e00\u4e2a\u5143\u7d20\u7684\u5f20\u91cf<\/li>\n<li>\u666e\u901a\u3001\u5c0f\u5199\u7684\u5b57\u6bcd\u8868\u793a<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x = torch.tensor(<span style=\"color:#ff0;font-weight:bold\">3.0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>y = torch.tensor(<span style=\"color:#ff0;font-weight:bold\">4.0<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>x + y, x - y, x \/ y, x ** y\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"32-\u5411\u91cf\">3.2 \u5411\u91cf<\/h2>\n<ul>\n<li>\u5177\u6709\u4e00\u4e2a\u8f74\u7684\u5f20\u91cf<\/li>\n<li>\u7c97\u4f53\u3001\u5c0f\u5199\u7684\u5b57\u6bcd\u8868\u793a<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>x = torch.arange(<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>x\n<\/span><\/span><span style=\"display:flex;\"><span>x.shape\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>\u5411\u91cf\/\u8f74\u7684\u7ef4\u5ea6\u8868\u793a\u5411\u91cf\u6216\u8f74\u7684\u957f\u5ea6\uff1b<\/p>"},{"title":"D2L--\u7b2c\u4e09\u7ae0\u7ebf\u6027\u795e\u7ecf\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/706-d2l-linear-nn\/","pubDate":"Sun, 21 Jul 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/706-d2l-linear-nn\/","description":"<h1 id=\"1-\u7ebf\u6027\u56de\u5f52\">1. \u7ebf\u6027\u56de\u5f52<\/h1>\n<h2 id=\"11-\u7ebf\u6027\u56de\u5f52\u7684\u57fa\u672c\u5143\u7d20\">1.1 \u7ebf\u6027\u56de\u5f52\u7684\u57fa\u672c\u5143\u7d20<\/h2>\n<ul>\n<li>\u7ebf\u6027\u6a21\u578b\uff1a\u76ee\u6807(y)\u53ef\u4ee5\u8868\u793a\u4e3a\u8f93\u5165\u7279\u5f81\u7684\u52a0\u6743\u548c\uff0c\u53c2\u6570\u5305\u62ec\u6743\u91cd\u5411\u91cf<strong>w<\/strong>\u548c\u504f\u7f6eb<\/li>\n<li>\u635f\u5931\u51fd\u6570\uff1a\u8868\u793a\u76ee\u6807\u7684\u5b9e\u9645\u503c\u4e0e\u9884\u6d4b\u503c\u4e4b\u95f4\u7684\u5dee\u8ddd\uff1b\u4e00\u822c\u6570\u503c\u8d8a\u5c0f\uff0c\u635f\u5931\u8d8a\u5c0f\u3002\u56de\u5f52\u95ee\u9898\u5e38\u7528\u5e73\u65b9\u8bef\u5dee\u51fd\u6570\uff0c\u5982\u4e0b\u516c\u5f0f\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240720171253170.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20240720171253170.png\" alt=\"image-20240720171253170\"  \/>\n<\/p>"},{"title":"D2L--\u7b2c\u56db\u7ae0\u591a\u5c42\u611f\u77e5\u673a","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/707-d2l-mlp\/","pubDate":"Sun, 28 Jul 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/707-d2l-mlp\/","description":"<h1 id=\"1-\u591a\u5c42\u611f\u77e5\u673a\">1. \u591a\u5c42\u611f\u77e5\u673a<\/h1>\n<h2 id=\"11-\u9690\u85cf\u5c42\">1.1 \u9690\u85cf\u5c42<\/h2>\n<ul>\n<li>\u4e4b\u524d\u6240\u5b66\u7684\u7ebf\u6027\u6a21\u578b\u610f\u5473\u7740\u5355\u8c03\u5047\u8bbe\uff0c\u5e76\u4e0d\u9002\u7528\u4e8e\u66f4\u590d\u6742\u7684\u5efa\u6a21\u95ee\u9898\uff0c\u4f8b\u5982\u4f53\u6e29\u4e0e\u75be\u75c5\uff1b\u56fe\u7247\u67d0\u4e2a\u50cf\u7d20\u70b9\u7684\u5f3a\u5ea6\u4e0e\u732b\u6216\u72d7\u7684\u5173\u7cfb\u7b49\uff1b<\/li>\n<li>\u591a\u5c42\u611f\u77e5\u673a\uff08MLP\uff09\uff1a\u5728\u8f93\u5165\u5c42\u4e0e\u8f93\u51fa\u5c42\u4e4b\u95f4\u52a0\u5165\u4e00\u4e2a\u6216\u591a\u4e2a\u9690\u85cf\u5c42\uff0c\u4ee5\u5b66\u4e60\u66f4\u52a0\u590d\u6742\u7684\u6a21\u578b\u60c5\u51b5\uff1b\n<ul>\n<li>\u53ea\u6709\u9690\u85cf\u5c42\u4e0e\u8f93\u51fa\u5c42\u6d89\u53ca\u5230\u795e\u7ecf\u5143\u8ba1\u7b97\u4e0e\u53c2\u6570\u66f4\u65b0\uff0c\u56e0\u6b64\u5982\u4e0b\u793a\u4f8bMLP\u7684\u5c42\u6570\u662f2\uff1b<\/li>\n<li>\u5bf9\u4e8e\u5176\u4e2d\u7684\u9690\u85cf\u5c42\u9700\u8981\u5e94\u7528\u975e\u7ebf\u6027\u7684\u6fc0\u6d3b\u51fd\u6570\uff08\u03c3\uff09\uff0c\u4ee5\u7a81\u7834\u5bf9\u4ecd\u4e3a\u7ebf\u6027\u672c\u8d28\u7684\u9650\u5236\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240723082016977.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20240723082016977.png\" alt=\"image-20240723082016977\"  \/>\n<\/p>"},{"title":"D2L--\u7b2c\u4e94\u7ae0\u6df1\u5ea6\u5b66\u4e60\u8ba1\u7b97","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/708-d2l-computation\/","pubDate":"Sun, 28 Jul 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/708-d2l-computation\/","description":"<h1 id=\"1-\u5c42\u548c\u5757\">1. \u5c42\u548c\u5757<\/h1>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240727223031831.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20240727223031831.png\" alt=\"image-20240727223031831\"  \/>\n<\/p>"},{"title":"D2L--\u7b2c\u516d\u7ae0\u5377\u79ef\u795e\u7ecf\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/709-d2l-cnn\/","pubDate":"Sun, 04 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/709-d2l-cnn\/","description":"<h1 id=\"1-\u4ece\u5168\u8fde\u63a5\u5c42\u5230\u5377\u79ef\">1. \u4ece\u5168\u8fde\u63a5\u5c42\u5230\u5377\u79ef<\/h1>\n<h2 id=\"11-\u4e0d\u53d8\u6027\">1.1 \u4e0d\u53d8\u6027<\/h2>\n<p>\u5047\u8bbe\u4e00\u4e2a\u573a\u666f\uff1a\u9700\u8981\u5236\u4f5c\u4e00\u4e2a\u68c0\u6d4b\u5668\uff0c\u5728\u4e00\u5f20\u56fe\u7247\u4e2d\u68c0\u6d4b\u4e00\u79cd\u7279\u5b9a\u7269\u4f53\u3002\u9700\u8981\u6ee1\u8db3\u4e24\u4e2a\u6027\u8d28\uff1a<\/p>\n<ol>\n<li>\u5e73\u79fb\u4e0d\u53d8\u6027\uff1a\u65e0\u8bba\u8be5\u7269\u54c1\u5728\u56fe\u7247\u7684\u54ea\u4e2a\u4f4d\u7f6e\uff0c\u90fd\u53ef\u4ee5\u68c0\u6d4b\u5230\uff1b<\/li>\n<li>\u5c40\u90e8\u6027\uff1a\u68c0\u6d4b\u5668\u53ea\u9700\u8981\u5173\u6ce8\u56fe\u50cf\u4e2d\u7684\u5c40\u90e8\u533a\u57df\uff0c\u4e0d\u8fc7\u5ea6\u5173\u6ce8\u5176\u5b83\u65e0\u5173\u533a\u57df\u3002<\/li>\n<\/ol>\n<h2 id=\"12-\u591a\u5c42\u611f\u77e5\u673a\u7684\u9650\u5236\">1.2 \u591a\u5c42\u611f\u77e5\u673a\u7684\u9650\u5236<\/h2>\n<ul>\n<li>\u5bf9\u4e8e\u56fe\u7247\uff08\u4f8b\u598212M\uff09\u50cf\u7d20\u7684<strong>\u4e00\u7ef4\u5c55\u5f00<\/strong>\uff0c\u5305\u542b36M\u7684\u5143\u7d20\u3002\u82e5\u4f7f\u7528\u5305\u542b100\u4e2a\u795e\u7ecf\u5143\u7684\u5355\u9690\u85cf\u5c42\uff0c\u6a21\u578b\u5c31\u89813.6B\u5143\u7d20\uff0c\u8bad\u7ec3\u96be\u5ea6\u8fc7\u5927\u3002<\/li>\n<li><strong>\u5377\u79ef<\/strong>(convolution)\u8ba1\u7b97\uff1a\u8f93\u5165<strong>X<\/strong>\u4e3a\u4e8c\u7ef4\u77e9\u9635\uff0c\u8f93\u51fa\u7684\u9690\u85cf\u8868\u793a<strong>H<\/strong>\u4ecd\u4e3a\u77e9\u9635\u3002\u53c2\u6570\u5305\u62ec\u6743\u91cd\u77e9\u9635<strong>V<\/strong>\u4e0e\u504f\u7f6e<strong>U<\/strong>\u3002<strong>H<\/strong>\u4e2d\u7684\u6bcf\u4e00\u4e2a\u5143\u7d20\u90fd\u7531\u6743\u91cd\u77e9\u9635<strong>V<\/strong>\u4e0e\u8f93\u5165<strong>X<\/strong>\u4e2d\u76f8\u5e94\u533a\u57df\u5143\u7d20\u7684&rsquo;\u70b9\u79ef&rsquo;\uff0c\u518d\u52a0\u4e0a\u504f\u7f6e\u6240\u5f97\u5230\u3002\uff08\u4e0b\u56fe\u6f14\u793a\u5ffd\u7565\u4e86\u504f\u7f6e\u8ba1\u7b97\uff09\n<ul>\n<li><strong>\u5e73\u79fb\u4e0d\u53d8\u6027<\/strong>\uff1a\u6743\u91cd\u77e9\u9635\uff08\u53c8\u79f0\u4e3a\u5377\u79ef\u6838\/\u6ee4\u6ce2\u5668\uff09\u5728\u6bcf\u6b21\u8ba1\u7b97\u4e2d\u4fdd\u6301\u4e0d\u53d8\uff0c\u4ee5\u63d0\u53d6\u76f8\u540c\u7684\u6a21\u5f0f\u3002<\/li>\n<li><strong>\u5c40\u90e8\u6027<\/strong>\uff1a\u5377\u79ef\u6838(kernel)\u7684\u5f62\u72b6\u901a\u5e38\u8f83\u5c0f(|a|&gt;\u25b3;|b|&gt;\u25b3)\uff0c\u5373\u9488\u5bf9\u8f93\u5165\u7684\u5c40\u90e8\u533a\u57df\u8fdb\u884c\u7279\u5f81\u63d0\u53d6\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><img loading=\"lazy\" src=\"C:%5cUsers%5cxiaoxin%5cAppData%5cRoaming%5cTypora%5ctypora-user-images%5cimage-20240731113235058.png\" alt=\"image-20240731113235058\"  \/>\n<\/p>"},{"title":"D2L--\u7b2c\u4e03\u7ae0\u73b0\u4ee3\u5377\u79ef\u795e\u7ecf\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/710-d2l-modern-cnn\/","pubDate":"Sun, 04 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/710-d2l-modern-cnn\/","description":"<h1 id=\"1-\u6df1\u5ea6\u5377\u79ef\u795e\u7ecf\u7f51\u7edcalexnet\">1. \u6df1\u5ea6\u5377\u79ef\u795e\u7ecf\u7f51\u7edc(AlexNet)<\/h1>\n<h2 id=\"11-\u5b66\u4e60\u8868\u5f81\">1.1 \u5b66\u4e60\u8868\u5f81<\/h2>\n<p>LeNet\u63d0\u51fa\u540e\uff0c\u5377\u79ef\u795e\u7ecf\u7f51\u7edc\u5e76\u672a\u5360\u636e\u4e3b\u6d41\uff0c\u800c\u662f\u5f80\u5f80\u7531\u5176\u5b83\u673a\u5668\u5b66\u4e60\u65b9\u6cd5\u6240\u8d85\u8d8a\uff0c\u5982SVM\u3002\u4e00\u4e2a\u4e3b\u8981\u7684\u539f\u56e0\u662f\u8f93\u5165\u6570\u636e\u7684\u7279\u5f81\u5904\u7406\u4e0a\u3002<\/p>"},{"title":"D2L--\u7b2c\u516b\u7ae0\u5faa\u73af\u795e\u7ecf\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/711-d2l-rnn\/","pubDate":"Sun, 11 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/711-d2l-rnn\/","description":"<h1 id=\"1-\u5e8f\u5217\u6a21\u578b\">1. \u5e8f\u5217\u6a21\u578b<\/h1>\n<h2 id=\"11-\u81ea\u56de\u5f52\u6a21\u578b\">1.1 \u81ea\u56de\u5f52\u6a21\u578b<\/h2>\n<p>\uff081\uff09<strong>\u81ea\u56de\u5f52\u6a21\u578b<\/strong>\uff1a\u5bf9\u4e8e\u4e00\u4e2a\u5305\u542bT\u4e2a&rsquo;\u65f6\u95f4&rsquo;\u8282\u70b9\u7684\u8f93\u5165\u5e8f\u5217\uff0c\u82e5\u9884\u6d4b\u5176\u4e2d\u7684\u7b2ct\u4e2a\u6570\u636e\uff0c\u5219\u4f9d\u8d56\u4e8e\u8be5\u8282\u70b9\u524d\u9762\u7684\u89c2\u5bdf\u6570\u636e<\/p>"},{"title":"D2L--\u7b2c\u4e5d\u7ae0\u73b0\u4ee3\u5faa\u73af\u795e\u7ecf\u7f51\u7edc","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/712-d2l-modern-rnn\/","pubDate":"Sun, 11 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/712-d2l-modern-rnn\/","description":"<h1 id=\"1-\u95e8\u63a7\u5faa\u73af\u5355\u5143gru\">1. \u95e8\u63a7\u5faa\u73af\u5355\u5143(GRU)<\/h1>\n<blockquote>\n<p>\u4f20\u7edf\u7684RNN\u5728\u5904\u7406\u957f\u5e8f\u5217\u65f6\u4f1a\u9047\u5230\u68af\u5ea6\u6d88\u5931\u6216\u68af\u5ea6\u7206\u70b8\u7684\u95ee\u9898\u3002\u4e3a\u4e86\u89e3\u51b3\u8fd9\u4e9b\u95ee\u9898\uff0c\u5f15\u5165\u4e86\u95e8\u63a7\u673a\u5236\u7684\u53d8\u79cd\uff0c\u5982\u957f\u77ed\u65f6\u8bb0\u5fc6\u7f51\u7edc\uff08LSTM, long short-term memory\uff09\u548c\u95e8\u63a7\u5faa\u73af\u5355\u5143\uff08GRU, gated recurrent unit\uff09\u3002GRU\u662fLSTM\u7684\u4e00\u4e2a\u7b80\u5316\u7248\u672c\uff0c\u5b83\u901a\u8fc7\u5408\u5e76\u67d0\u4e9b\u95e8\u5e76\u51cf\u5c11\u53c2\u6570\u6570\u91cf\u6765\u63d0\u9ad8\u6548\u7387\u3002<\/p>"},{"title":"D2L--\u7b2c\u5341\u7ae0\u6ce8\u610f\u529b\u673a\u5236\u4e0eTransformer","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/713-d2l-attention\/","pubDate":"Sat, 17 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/713-d2l-attention\/","description":"<h1 id=\"1-\u6ce8\u610f\u529b\u63d0\u793a\">1. \u6ce8\u610f\u529b\u63d0\u793a<\/h1>\n<h2 id=\"11-\u751f\u7269\u5b66\u7684\u6ce8\u610f\u529b\u63d0\u793a\">1.1 \u751f\u7269\u5b66\u7684\u6ce8\u610f\u529b\u63d0\u793a<\/h2>\n<p>\u5982\u4e0b\u7684\u89c2\u5bdf\u5b9e\u9a8c\uff1a<\/p>\n<ul>\n<li>\u53d7\u8bd5\u8005\u7684\u6ce8\u610f\u529b\u5f80\u5f80\u9996\u5148\u88ab\u989c\u8272\u9c9c\u8273\u7684\u7ea2\u8272\u5496\u5561\u676f\u5438\u5f15\uff08\u975e\u81ea\u4e3b\u6027\uff09\uff1b\n<ul>\n<li>\u5ba2\u89c2\u5b58\u5728\u7684\uff0c\u5bf9\u4e8e\u89c2\u5bdf\u8005\u7684\u5438\u5f15\u7279\u5f81\u3002<\/li>\n<\/ul>\n<\/li>\n<li>\u559d\u5b8c\u5496\u5561\uff0c\u5904\u4e8e\u5174\u594b\u72b6\u6001\u7684\u5927\u8111\u7ecf\u601d\u8003\u540e\uff0c\u76f8\u6bd4\u770b\u62a5\u7b49\uff0c\u53ef\u80fd\u66f4\u60f3\u8981\u8bfb\u4e00\u672c\u4e66\uff08\u81ea\u4e3b\u6027\u6743\u91cd\u66f4\u9ad8\uff09\uff1b\n<ul>\n<li>\u5728\u53d7\u8bd5\u8005\u7684\u4e3b\u89c2\u610f\u613f\u63a8\u52a8\u4e0b\u6240\u505a\u7684\u51b3\u5b9a\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20240812204130442.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20240812204130442.png\" alt=\"image-20240812204130442\"  \/>\n<\/p>"},{"title":"D2L--\u7b2c\u5341\u56db\u53ca\u5341\u4e94\u7ae0BERT\u6a21\u578b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/714-d2l-bert\/","pubDate":"Sat, 17 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/714-d2l-bert\/","description":"<h1 id=\"1-\u57fa\u7840\u4ecb\u7ecd\">1. \u57fa\u7840\u4ecb\u7ecd<\/h1>\n<ul>\n<li>BERT\uff08\u6765\u81eaTransformers\u7684\u53cc\u5411\u7f16\u7801\u5668\u8868\u793a\uff09\u57fa\u4e8e<strong>Transformer\u7f16\u7801\u5668<\/strong>\u8fdb\u884c\u9884\u8bad\u7ec3(Pre-train)\uff0c\u4ece\u800c\u5bf9\u8f93\u5165\u8bcd\u5143\u8fdb\u884c\u4e0a\u4e0b\u6587\u8868\u793a\u3002<\/li>\n<li>\u800c\u5728\u9488\u5bf9\u5177\u4f53\u7684\u81ea\u7136\u8bed\u8a00\u5904\u7406\u4efb\u52a1\u7684\u8bad\u7ec3(Fine-tuning)\u65f6\uff0c\u5bf9\u9884\u8bad\u7ec3Transformer\u7f16\u7801\u5668\u7684\u6240\u6709\u53c2\u6570\u8fdb\u884c\u5fae\u8c03\uff0c\u800c\u989d\u5916\u7684\u8f93\u51fa\u5c42\u5c06\u4ece\u5934\u5f00\u59cb\u8bad\u7ec3\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/miro.medium.com\/v2\/resize:fit:1134\/1*FzPes8JAlfFHi-7lR5yWKQ.png -->\n<img src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/1_FzPes8JAlfFHi-7lR5yWKQ.png\" alt=\"\u4f7f\u7528Pre-training\u7684\u65b9\u6cd5\u8207\u6642\u6a5f| by Jia-Yau Shiau | \u8edf\u9ad4\u4e4b\u5fc3| Medium | AI Blog TW\" style=\"zoom:67%;\" \/>\n<h1 id=\"2-\u8f93\u5165\u8868\u793a\">2. \u8f93\u5165\u8868\u793a<\/h1>\n<p>BERT\u8f93\u5165\u5e8f\u5217\u7684Embedding\u5d4c\u5165\uff0c\u8868\u793a\u4e3a\u8bcd\u5143\u5d4c\u5165\u3001\u6bb5\u5d4c\u5165\u548c\u4f4d\u7f6e\u5d4c\u5165\u7684\u77e9\u9635\u52a0\u548c\u3002<\/p>"},{"title":"D2L--\u7b2c\u5341\u4e00\u53ca\u5341\u4e8c\u7ae0\u4f18\u5316\u7b97\u6cd5&\u591aGPU\u5e76\u884c","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/715-d2l-optimization\/","pubDate":"Sat, 24 Aug 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/715-d2l-optimization\/","description":"<ul>\n<li>\u5728\u6df1\u5ea6\u5b66\u4e60\u4e2d\uff0c\u4f18\u5316\u7b97\u6cd5\u662f\u8bad\u7ec3\u6a21\u578b\u7684\u5173\u952e\u90e8\u5206\uff0c\u5b83\u4eec\u7528\u4e8e\u66f4\u65b0\u7f51\u7edc\u7684\u53c2\u6570\u4ee5<strong>\u6700\u5c0f\u5316\u635f\u5931\u51fd\u6570<\/strong>\u3002\n<ul>\n<li>\u7531\u4e8e\u4f18\u5316\u7b97\u6cd5\u7684\u76ee\u6807\u51fd\u6570\u901a\u5e38\u662f\u57fa\u4e8e\u8bad\u7ec3\u6570\u636e\u96c6\u7684\u635f\u5931\u51fd\u6570\uff0c\u56e0\u6b64\u4f18\u5316\u7684\u76ee\u6807\u662f\u51cf\u5c11<strong>\u8bad\u7ec3\u8bef\u5dee<\/strong>\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<blockquote>\n<p>NOTE: \u6df1\u5ea6\u5b66\u4e60\u7684\u6700\u7ec8\u76ee\u6807\u662f\u51cf\u5c0f\u6cdb\u5316\u8bef\u5dee\uff0c\u6240\u4ee5\u5728\u5173\u6ce8\u4f18\u5316\u7b97\u6cd5\u7684\u540c\u65f6\uff0c\u4e5f\u8981\u6ce8\u610f\u8fc7\u62df\u5408\u3002<\/p>"},{"title":"\u6df1\u5ea6\u5b66\u4e60--GAN\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/716-gan\/","pubDate":"Tue, 03 Sep 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/716-gan\/","description":"<blockquote>\n<ul>\n<li>2014\u5e74\u8bba\u6587\uff1ahttps:\/\/proceedings.neurips.cc\/paper_files\/paper\/2014\/file\/5ca3e9b122f61f8f06494c97b1afccf3-Paper.pdf<\/li>\n<li>Pytorch DCGAN\u5b9e\u73b0\uff1ahttps:\/\/pytorch.org\/tutorials\/beginner\/dcgan_faces_tutorial.html<\/li>\n<li>Other (e.g. cGAN)\uff1ahttps:\/\/github.com\/gordicaleksa\/pytorch-GANs<\/li>\n<\/ul><\/blockquote>\n<h1 id=\"1-\u7b80\u4ecb\">1. \u7b80\u4ecb<\/h1>\n<p>GAN (Generative Adversarial Networks, \u751f\u6210\u5bf9\u6297\u7f51\u7edc) \u4e8e2014\u5e74\u7531Ian\u7b49\u63d0\u51fa\u3002\u7b80\u5355\u6765\u8bf4\uff0cGAN\u4e3b\u8981\u5305\u542b\u4e24\u4e2a\u6a21\u578b\uff1a<\/p>"},{"title":"Hugging Face(1)-NLP basic","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/717-huggingface-nlp\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/717-huggingface-nlp\/","description":"<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20241015193100700.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20241015193100700.png\" alt=\"image-20241015193100700\"  \/>\n<\/p>"},{"title":"Hugging Face(3)-Tokenizer\u5e93","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/718-huggingface-tokenizers\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/718-huggingface-tokenizers\/","description":"<p><a href=\"https:\/\/huggingface.co\/docs\/tokenizers\/quicktour\">https:\/\/huggingface.co\/docs\/tokenizers\/quicktour<\/a><\/p>\n<p><strong>tokenizer\u5e93<\/strong>\u7684\u5904\u7406\u6d41\u7a0b\u4e00\u822c\u5305\u62ec\u5982\u4e0b\u56db\u6b65\u2014\u2014<\/p>\n<ul>\n<li><a href=\"https:\/\/huggingface.co\/docs\/tokenizers\/components#normalizers\">Normalizers<\/a>: \u6587\u672c\u53e5\u9884\u5904\u7406\uff0c\u4f7f\u89c4\u8303\u5316<\/li>\n<li><a href=\"https:\/\/huggingface.co\/docs\/tokenizers\/components#pretokenizers\">Pre-tokenizers<\/a>: \u5c06\u53e5\u5b50\u521d\u6b65\u62c6\u5206\u4e3a\u5355\u5143\u8bcd<\/li>\n<li><a href=\"https:\/\/huggingface.co\/docs\/tokenizers\/components#models\">Model<\/a>\uff1a\u5f97\u5230\u6700\u7ec8\u7684\u5206\u8bcdtoken\u7ed3\u679c\uff0c\u53ca\u5176\u5bf9\u5e94id\u7f16\u53f7<\/li>\n<li><a href=\"https:\/\/huggingface.co\/docs\/tokenizers\/components#postprocessors\">Post-Processors<\/a>: \u6dfb\u52a0\u7279\u6b8a\u8bcd\u5143\u6807\u8bb0<\/li>\n<\/ul>\n<h1 id=\"1-\u8bad\u7ec3\u5206\u8bcd\u5668\">1. \u8bad\u7ec3\u5206\u8bcd\u5668<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> tokenizers <span style=\"color:#fff;font-weight:bold\">import<\/span> Tokenizer\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) \u9009\u62e9\u4e00\u79cd\u5206\u8bcd\u6a21\u578b\uff0c\u5e76\u521b\u5efa\u5b9e\u4f8b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> tokenizers.models <span style=\"color:#fff;font-weight:bold\">import<\/span> BPE\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer = Tokenizer(BPE(unk_token=<span style=\"color:#0ff;font-weight:bold\">&#34;[UNK]&#34;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> tokenizers.trainers <span style=\"color:#fff;font-weight:bold\">import<\/span> BpeTrainer\n<\/span><\/span><span style=\"display:flex;\"><span>trainer = BpeTrainer(special_tokens=[<span style=\"color:#0ff;font-weight:bold\">&#34;[UNK]&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;[CLS]&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;[SEP]&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;[PAD]&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;[MASK]&#34;<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) \u8bbe\u7f6e\u9884\u5206\u8bcd\u5668\uff0c\u8fd9\u91cc\u6309\u7a7a\u767d\u5b57\u7b26\u5206\u5272\u6587\u672c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> tokenizers.pre_tokenizers <span style=\"color:#fff;font-weight:bold\">import<\/span> Whitespace\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer.pre_tokenizer = Whitespace()\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (3) \u57fa\u4e8e\u8bed\u6599\u5e93\uff0c\u8fdb\u884c\u5206\u8bcd\u8bad\u7ec3<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>copus_file = [<span style=\"color:#0ff;font-weight:bold\">&#34;datasets\/wikitext-103-raw-v1\/wiki_train.csv&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer.train(copus_file, trainer)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (4) \u4fdd\u5b58\u5e76\u52a0\u8f7d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer.save(<span style=\"color:#0ff;font-weight:bold\">&#34;datasets\/wikitext-103-raw-v1\/tokenizer-wiki.json&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer = Tokenizer.from_file(<span style=\"color:#0ff;font-weight:bold\">&#34;datasets\/wikitext-103-raw-v1\/tokenizer-wiki.json&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(tokenizer)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># tokenizers.Tokenizer<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u4e0e\u76f4\u63a5\u4ece\u9884\u8bad\u7ec3\u6a21\u578b\u4e2d\u63d0\u53d6\u7684\u5206\u8bcd\u5668\u7c7b\u578b\u4e0d\u592a\u4e00\u6837<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> transformers <span style=\"color:#fff;font-weight:bold\">import<\/span> AutoTokenizer\n<\/span><\/span><span style=\"display:flex;\"><span>tokenizer2 = AutoTokenizer.from_pretrained(<span style=\"color:#0ff;font-weight:bold\">&#34;datasets\/bert-base-uncased&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(tokenizer2)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># transformers.models.bert.tokenization_bert_fast.BertTokenizerFast<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>tokenizers\u5e93\u63d0\u4f9b\u4e864\u79cd\u5e38\u89c1\u7684\u5b50\u8bcd\u5206\u8bcd\u65b9\u6cd5\u3002<strong>BPE<\/strong>\u901a\u8fc7\u8fed\u4ee3\u5730\u5408\u5e76\u6700\u9891\u7e41\u7684\u5b57\u7b26\u6216\u5b50\u8bcd\u5bf9\u6765\u6784\u5efa\u8bcd\u6c47\u8868\uff0c\u5e38\u7528\u4e8eGPT \u548c RoBERTa \u7b49\u6a21\u578b\uff1b<strong>WordLevel<\/strong>\u57fa\u4e8e\u5b8c\u6574\u8bcd\u7684\u5206\u8bcd\u65b9\u6cd5\uff0c\u4f7f\u7528\u4e00\u4e2a\u56fa\u5b9a\u7684\u8bcd\u6c47\u8868\uff0c\u672a\u767b\u5f55\u8bcd\u901a\u5e38\u88ab\u6807\u8bb0\u4e3a <code>[UNK]<\/code>\u3002\u6b64\u5916\u8fd8\u6709Unigram\u4ee5\u53caWordPiece\u3002<\/p>"},{"title":"Hugging Face(2)-Datasets\u5e93","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/719-huggingface-datasets\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/719-huggingface-datasets\/","description":"<p><a href=\"https:\/\/huggingface.co\/docs\/datasets\/index\">https:\/\/huggingface.co\/docs\/datasets\/index<\/a><\/p>\n<p>A <a href=\"https:\/\/huggingface.co\/docs\/datasets\/v3.0.1\/en\/package_reference\/main_classes#datasets.Dataset\">Dataset<\/a> provides fast random access to the rows, and memory-mapping so that loading even large datasets only uses a relatively small amount of device memory.<\/p>\n<p>But for really, really big datasets ( &gt; 100G) that won\u2019t even fit on disk or in memory, an <a href=\"https:\/\/huggingface.co\/docs\/datasets\/v3.0.1\/en\/package_reference\/main_classes#datasets.IterableDataset\">IterableDataset<\/a> allows you to access and use the dataset without waiting for it to download completely!<\/p>\n<ul>\n<li><a href=\"https:\/\/huggingface.co\/learn\/nlp-course\/chapter5\/4?fw=pt#streaming-datasets\">https:\/\/huggingface.co\/learn\/nlp-course\/chapter5\/4?fw=pt#streaming-datasets<\/a><\/li>\n<li><a href=\"https:\/\/huggingface.co\/docs\/datasets\/about_mapstyle_vs_iterable\">https:\/\/huggingface.co\/docs\/datasets\/about_mapstyle_vs_iterable<\/a><\/li>\n<\/ul>\n<h1 id=\"1-\u8bfb\u53d6\">1. \u8bfb\u53d6<\/h1>\n<h2 id=\"11-\u4ee5json\u6587\u4ef6\u8bfb\u53d6\u4e3a\u4f8b\">1.1 \u4ee5Json\u6587\u4ef6\u8bfb\u53d6\u4e3a\u4f8b<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">## \u9884\u5148\u4e0b\u8f7d\u89e3\u538b\u5230\u672c\u5730\u7684datasets\u6587\u4ef6\u5939<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># wget https:\/\/github.com\/crux82\/squad-it\/raw\/master\/SQuAD_it-train.json.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># wget https:\/\/github.com\/crux82\/squad-it\/raw\/master\/SQuAD_it-test.json.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># gzip -dkv SQuAD_it-*.json.gz<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> datasets <span style=\"color:#fff;font-weight:bold\">import<\/span> load_dataset\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset = load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#34;json&#34;<\/span>, data_files=<span style=\"color:#0ff;font-weight:bold\">&#34;.\/datasets\/SQuAD_it-train.json&#34;<\/span>, field=<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># field\u53c2\u6570\u4e3aJSON\u6587\u4ef6\u7279\u6709\uff0c\u7528\u4e8e\u6307\u5b9a JSON \u6587\u4ef6\u4e2d\u5305\u542b\u5b9e\u9645\u6570\u636e\u7684\u5b57\u6bb5\u540d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset <span style=\"color:#007f7f\"># \u9ed8\u8ba4\u8bfb\u53d6\u4e3atrain split<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset.keys()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># dict_keys([&#39;train&#39;])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># DatasetDict({<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     train: Dataset({<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         features: [&#39;title&#39;, &#39;paragraphs&#39;],<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         num_rows: 442<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#     })<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># })<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"12-json\u7684\u5176\u5b83\u5f62\u5f0f\u8bfb\u53d6\">1.2 JSON\u7684\u5176\u5b83\u5f62\u5f0f\u8bfb\u53d6<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (1) \u540c\u65f6\u8bfb\u53d6\u4e24\u4e2asplit<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data_files = {<span style=\"color:#0ff;font-weight:bold\">&#34;train&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-train.json&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;test&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-test.json&#34;<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset = load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#34;json&#34;<\/span>, data_files=data_files, field=<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (2) \u8bfb\u53d6gz\u538b\u7f29\u683c\u5f0f<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data_files = {<span style=\"color:#0ff;font-weight:bold\">&#34;train&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-train.json.gz&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;test&#34;<\/span>: <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-test.json.gz&#34;<\/span>}\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset = load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#34;json&#34;<\/span>, data_files=data_files, field=<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># (3) \u8fdc\u7a0b\u8bfb\u53d6<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>url = <span style=\"color:#0ff;font-weight:bold\">&#34;https:\/\/github.com\/crux82\/squad-it\/raw\/master\/&#34;<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data_files = {\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;train&#34;<\/span>: url + <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-train.json.gz&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#0ff;font-weight:bold\">&#34;test&#34;<\/span>: url + <span style=\"color:#0ff;font-weight:bold\">&#34;SQuAD_it-test.json.gz&#34;<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>}\n<\/span><\/span><span style=\"display:flex;\"><span>squad_it_dataset = load_dataset(<span style=\"color:#0ff;font-weight:bold\">&#34;json&#34;<\/span>, data_files=data_files, field=<span style=\"color:#0ff;font-weight:bold\">&#34;data&#34;<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>data_files\u53ef\u4ee5\u4e3a\u6bcf\u4e2asplit\u6307\u5b9a\u591a\u4e2a\u6587\u4ef6\uff0chttps:\/\/huggingface.co\/docs\/datasets\/loading<\/p>"},{"title":"Torchtext\u6784\u5efaVocab\u8bcd\u8868","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/720-torchtext\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/720-torchtext\/","description":"<h2 id=\"torchtextvocab\">torchtext.vocab<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> torchtext.vocab <span style=\"color:#fff;font-weight:bold\">import<\/span> vocab\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"1-\u5b9a\u4e49\u8bcd\u6c47\u8868\">1. \u5b9a\u4e49\u8bcd\u6c47\u8868<\/h3>\n<ul>\n<li>\u57fa\u4e8e\u8bcd\u5143\u7684\u9891\u7387\u7edf\u8ba1\u8868\uff0c<code>OrderedDict<\/code> \u5bf9\u8c61<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>vocab(ordered_dict = ,       <span style=\"color:#007f7f\">#\u4e00\u4e2a OrderedDict \u5bf9\u8c61\uff0c\u5305\u542b\u8bcd\u6c47\u548c\u5b83\u4eec\u7684\u9891\u7387\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>      min_freq = <span style=\"color:#ff0;font-weight:bold\">1<\/span>,          <span style=\"color:#007f7f\">#\u6307\u5b9a\u8bcd\u6c47\u8868\u4e2d\u8bcd\u51fa\u73b0\u7684\u6700\u5c0f\u9891\u7387\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>      specials = <span style=\"color:#fff;font-weight:bold\">None<\/span>,       <span style=\"color:#007f7f\">#\u4e00\u4e2a\u5217\u8868\uff0c\u5305\u542b\u7279\u6b8a\u6807\u8bb0\uff08\u5982 &lt;unk&gt;, &lt;pad&gt;, &lt;bos&gt;, &lt;eos&gt; \u7b49\uff09\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>      special_first = <span style=\"color:#fff;font-weight:bold\">True<\/span>)  <span style=\"color:#007f7f\">#\u4e00\u4e2a\u5e03\u5c14\u503c\uff0c\u51b3\u5b9a\u7279\u6b8a\u6807\u8bb0\u662f\u5426\u5728\u8bcd\u6c47\u8868\u7684\u5f00\u5934\u3002<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> collections <span style=\"color:#fff;font-weight:bold\">import<\/span> Counter, OrderedDict\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>counter = Counter([<span style=\"color:#0ff;font-weight:bold\">&#34;a&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;a&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;b&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;b&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;b&#34;<\/span>])\n<\/span><\/span><span style=\"display:flex;\"><span>counter\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Counter({&#39;b&#39;: 3, &#39;a&#39;: 2})<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>sorted_by_freq_tuples = <span style=\"color:#fff;font-weight:bold\">sorted<\/span>(counter.items(), key=<span style=\"color:#fff;font-weight:bold\">lambda<\/span> x: x[<span style=\"color:#ff0;font-weight:bold\">1<\/span>], reverse=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>sorted_by_freq_tuples\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># [(&#39;b&#39;, 3), (&#39;a&#39;, 2)]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>ordered_dict = OrderedDict(sorted_by_freq_tuples)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># OrderedDict([(&#39;b&#39;, 3), (&#39;a&#39;, 2)])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>v1 = vocab(ordered_dict)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Vocab()<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u76f4\u63a5\u57fa\u4e8e\u53ef\u8fed\u4ee3\u5bf9\u8c61<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>build_vocab_from_iterator(\n<\/span><\/span><span style=\"display:flex;\"><span>    iterator = , <span style=\"color:#007f7f\"># Iterator used to build Vocab. Must yield list or iterator of tokens.<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    min_freq = ,\n<\/span><\/span><span style=\"display:flex;\"><span>    specials = ,\n<\/span><\/span><span style=\"display:flex;\"><span>    special_first = ,\n<\/span><\/span><span style=\"display:flex;\"><span>\tmax_tokens =<span style=\"color:#fff;font-weight:bold\">None<\/span>  <span style=\"color:#007f7f\">#\u6700\u591a\u5f15\u5165\u591a\u5c11\u4e2a\u8bcd\u5143<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">from<\/span> torchtext.vocab <span style=\"color:#fff;font-weight:bold\">import<\/span> build_vocab_from_iterator\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5b9a\u4e49\u4e00\u4e2a\u7b80\u5355\u7684\u8fed\u4ee3\u5668<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># yield\u5173\u952e\u5b57\uff0c\u7528\u4e8e\u5b9a\u4e49\u751f\u6210\u5668\u51fd\u6570\u3002\u60f0\u6027\u53d6\u503c\uff1a\u6309\u9700\u751f\u6210\u503c\uff0c\u800c\u4e0d\u662f\u4e00\u6b21\u6027\u751f\u6210\u6240\u6709\u503c\uff0c\u9002\u5408\u5904\u7406\u5927\u6570\u636e\u96c6\u3002<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> yield_tokens(data_iter):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">for<\/span> text in data_iter:\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">yield<\/span> text.split()\n<\/span><\/span><span style=\"display:flex;\"><span>        \n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u793a\u4f8b\u6570\u636e<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>data = [<span style=\"color:#0ff;font-weight:bold\">&#34;this is a sentence&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;this is another sentence&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6784\u5efa\u8bcd\u6c47\u8868<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>v2 = build_vocab_from_iterator(yield_tokens(data), min_freq=<span style=\"color:#ff0;font-weight:bold\">1<\/span>, specials=[<span style=\"color:#0ff;font-weight:bold\">&#39;&lt;unk&gt;&#39;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#39;&lt;pad&gt;&#39;<\/span>], special_first=<span style=\"color:#fff;font-weight:bold\">True<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">### \u76f4\u63a5\u4f7f\u7528token list\u4f5c\u4e3a\u8f93\u5165<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>token_lists = [\n<\/span><\/span><span style=\"display:flex;\"><span>    [<span style=\"color:#0ff;font-weight:bold\">&#34;this&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;is&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;a&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;sentence&#34;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>    [<span style=\"color:#0ff;font-weight:bold\">&#34;this&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;is&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;another&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;sentence&#34;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6784\u5efa\u8bcd\u6c47\u8868<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>v3 = build_vocab_from_iterator(token_lists)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h3 id=\"2-\u67e5\u8be2\u8bcd\u6c47\u8868\">2. \u67e5\u8be2\u8bcd\u6c47\u8868<\/h3>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 1. \u67e5\u770b\u8bcd\u5143\u7684\u7d22\u5f15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>v1[<span style=\"color:#0ff;font-weight:bold\">&#39;a&#39;<\/span>], v1[<span style=\"color:#0ff;font-weight:bold\">&#39;b&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 2. \u8bbe\u7f6e\u5f53\u67e5\u8be2\u4e0d\u5728\u8bcd\u6c47\u8868\u7684\u65b0\u8bcd\u5143\u65f6\uff0c\u8fd4\u56de\u7684\u7d22\u5f15<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>v2.set_default_index(v2[unk_token])\n<\/span><\/span><span style=\"display:flex;\"><span>v2[<span style=\"color:#0ff;font-weight:bold\">&#39;sss&#39;<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 3. \u67e5\u8be2\u7d22\u5f15\u5bf9\u5e94\u7684\u8bcd\u5143<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>v2.get_itos()[:<span style=\"color:#ff0;font-weight:bold\">3<\/span>]\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># v2[&#39;out of vocab&#39;] is v2[unk_token]<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>v2.get_stoi()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># {&#39;a&#39;: 5,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;this&#39;: 4,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;another&#39;: 6,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;sentence&#39;: 3,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;is&#39;: 2,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;&lt;pad&gt;&#39;: 1,<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#  &#39;&lt;unk&gt;&#39;: 0}<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"Pytorch-Dataset\u4e0eDataloader\u7684\u4f7f\u7528.","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/721-pytorch-dataloader\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/721-pytorch-dataloader\/","description":"<p>\u5728 PyTorch \u4e2d\uff0c<code>Dataset<\/code>\u3001<code>DataLoader<\/code> \u548c <code>Sampler<\/code> \u662f\u7528\u4e8e\u6570\u636e\u52a0\u8f7d\u548c\u5904\u7406\u7684\u6838\u5fc3\u7ec4\u4ef6\u3002\u5b83\u4eec\u76f8\u4e92\u914d\u5408\uff0c\u4f7f\u5f97\u6570\u636e\u7684\u52a0\u8f7d\u548c\u6279\u5904\u7406\u66f4\u52a0\u9ad8\u6548\u548c\u7075\u6d3b\u3002<\/p>\n<ul>\n<li><code>Dataset<\/code> \u662f\u4e00\u4e2a\u62bd\u8c61\u7c7b\uff0c\u7528\u4e8e\u8868\u793a\u6570\u636e\u96c6\u3002<\/li>\n<li><code>DataLoader<\/code> \u662f\u4e00\u4e2a\u8fed\u4ee3\u5668\uff0c\u7528\u4e8e\u5c06\u6570\u636e\u96c6\u5206\u6210\u5c0f\u6279\u91cf\u3002<\/li>\n<li><code>Sampler<\/code> \u53ef\u4ee5\u81ea\u5b9a\u4e49\u66f4\u52a0\u590d\u6742\u7684\u91c7\u6837\u7b56\u7565\u3002<\/li>\n<\/ul>\n<h1 id=\"1-dataset\">1. Dataset<\/h1>\n<p>\u5c06\u8bad\u7ec3\u6570\u636e\uff08\u5982\u7279\u5f81\u548c\u6807\u7b7e\uff09\u5c01\u88c5\u4e3a\u4e00\u4e2a\u53ef\u8fed\u4ee3\u7684 PyTorch <code>Dataset<\/code> \u7c7b\u3002\u6709\u5982\u4e0b\u4e24\u79cd\u65b9\u5f0f\u3002<\/p>"},{"title":"Pytorch-\u5e38\u7528\u795e\u7ecf\u7f51\u7edc\u5c42-torch.nn","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/722-pytorch-layers\/","pubDate":"Wed, 16 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/722-pytorch-layers\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch.nn <span style=\"color:#fff;font-weight:bold\">as<\/span> nn\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-\u7ebf\u6027\u5c42\">1. \u7ebf\u6027\u5c42<\/h1>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">input<\/span> = torch.randn(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>) <span style=\"color:#007f7f\">#3\u4e2a\u6837\u672c\uff0c\u6bcf\u4e2a\u6837\u672c4\u4e2a\u7279\u5f81<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>linear = nn.Linear(in_features=<span style=\"color:#ff0;font-weight:bold\">4<\/span>, out_features=<span style=\"color:#ff0;font-weight:bold\">2<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>linear(<span style=\"color:#fff;font-weight:bold\">input<\/span>).shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([3, 2])<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"2-\u6b63\u5219\u5316\u5c42\">2. \u6b63\u5219\u5316\u5c42<\/h1>\n<h2 id=\"21-dropout\">2.1 dropout<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>dropout = nn.Dropout(p=<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">input<\/span> = torch.randn(<span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>dropout(<span style=\"color:#fff;font-weight:bold\">input<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># tensor([[ 0.0000, -0.0000, -0.5670, -0.0000],<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         [ 4.7224, -4.0010,  0.0000, -0.0000],<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\">#         [-0.9960,  0.0000,  0.6658, -0.0000]])<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"22-\u6279\u5f52\u4e00\u5316\">2.2 \u6279\u5f52\u4e00\u5316<\/h2>\n<ul>\n<li>\u5bf9\u6bcf\u4e2a\u7279\u5f81\uff08\u5728\u4e0d\u540c\u6837\u672c\u7684\u5206\u5e03\uff09\u8fdb\u884c\u5f52\u4e00\u5316<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>batchnorm = nn.BatchNorm1d(num_features=<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>batchnorm(<span style=\"color:#fff;font-weight:bold\">input<\/span>).shape       <span style=\"color:#007f7f\"># (batch_size, emb_len)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([3, 4])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>input2 = torch.randn(<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>) <span style=\"color:#007f7f\"># (batch_size, emb_len, seq_len)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>batchnorm(input2).shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([2, 4, 3])<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"23-\u5c42\u5f52\u4e00\u5316\">2.3 \u5c42\u5f52\u4e00\u5316<\/h2>\n<ul>\n<li>\u5bf9\u6bcf\u4e2a\u6837\u672c\u7684\u6240\u6709\u7279\u5f81\u5206\u5e03\u8fdb\u884c\u5f52\u4e00\u5316<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>layer_norm = nn.LayerNorm(normalized_shape=<span style=\"color:#ff0;font-weight:bold\">4<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>layer_norm(<span style=\"color:#fff;font-weight:bold\">input<\/span>).shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([3, 4])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>input2 = torch.randn(<span style=\"color:#ff0;font-weight:bold\">2<\/span>, <span style=\"color:#ff0;font-weight:bold\">3<\/span>, <span style=\"color:#ff0;font-weight:bold\">4<\/span>) <span style=\"color:#007f7f\"># (batch_size, seq_len, emb_len)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>layer_norm(input2).shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([2, 3, 4])<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"3-\u6fc0\u6d3b\u51fd\u6570\">3. \u6fc0\u6d3b\u51fd\u6570<\/h1>\n<ul>\n<li><a href=\"https:\/\/lishensuo.github.io\/posts\/bioinfo\/707d2l-%E7%AC%AC%E5%9B%9B%E7%AB%A0%E5%A4%9A%E5%B1%82%E6%84%9F%E7%9F%A5%E6%9C%BA\/#22-%e6%bf%80%e6%b4%bb%e5%87%bd%e6%95%b0\">D2L\u7684\u7b80\u5355\u5b66\u4e60\u7b14\u8bb0<\/a>\u8bb0\u5f55\u4e86torch\u90e8\u5206\u7ecf\u5178\u6fc0\u6d3b\u51fd\u6570\u7684\u8ba1\u7b97\u51fd\u6570\u3002\u901a\u5e38\u53ef\u4ee5\u76f4\u63a5\u8ba1\u7b97\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>torch.relu(torch.tensor(<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>))     <span style=\"color:#007f7f\"># tensor(0.5000)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.sigmoid(torch.tensor(<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>))  <span style=\"color:#007f7f\"># tensor(0.6225)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u57fa\u4e8etorch.nn\u5b9e\u73b0\u7684\u6fc0\u6d3b\u51fd\u6570\u591a\u4e3a\u6a21\u5757\u7c7b<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>relu = nn.ReLU()\n<\/span><\/span><span style=\"display:flex;\"><span>relu(torch.tensor(<span style=\"color:#ff0;font-weight:bold\">0.5<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>sigmoid = nn.Sigmoid()\n<\/span><\/span><span style=\"display:flex;\"><span>softmax = nn.Softmax(dim=<span style=\"color:#ff0;font-weight:bold\">1<\/span>) <span style=\"color:#007f7f\">#\u5bf9\u8f741\u8fdb\u884csoftmax\u8f6c\u6362\uff0c\u4f7f\u5176\u548c\u4e3a1<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u57fa\u4e8eRelu\u7684\u5e38\u89c1\u53d8\u4f53<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8d1f\u6570\u4e0d\u7f6e\u4e3a0\uff0c\u800c\u662f\u4e58\u4e00\u4e2a\u5f88\u5c0f\u7684\u7cfb\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>self_activation = nn.LeakyReLU(negative_slope=<span style=\"color:#ff0;font-weight:bold\">0.01<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u8d1f\u6570\u4e0d\u7f6e\u4e3a0\uff0c\u800c\u662f\u4e58\u4e00\u4e2a\u53ef\u5b66\u4e60\u7684\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>self_activation = nn.PReLU(num_parameters=<span style=\"color:#ff0;font-weight:bold\">1<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6574\u5408\u9ad8\u65af\u5206\u5e03\uff0c\u5728\u795e\u7ecf\u7f51\u7edc\u4e2d\u8868\u73b0\u51fa\u826f\u597d\u7684\u6027\u80fd\uff0c\u7279\u522b\u662f\u5728Transformer\u6a21\u578b\u4e2d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>self_activation = nn.GELU()\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"4-\u5d4c\u5165\u5c42\">4. \u5d4c\u5165\u5c42<\/h1>\n<p>\u4e3a\u6bcf\u4e2a\u79bb\u6563\u7684\u6574\u578b\u7d22\u5f15\u8fd4\u56de\u4e00\u4e2a\u56fa\u5b9a\u5927\u5c0f\u7684\u5411\u91cf\uff0c\u901a\u5e38\u7528\u4e8e\u81ea\u7136\u8bed\u8a00\u5904\u7406\u4e2d\u7684\u8bcd\u5d4c\u5165\u3002<\/p>"},{"title":"GPU,CUDA\u4ee5\u53caPytorch\u4e4b\u95f4\u7684\u5173\u7cfb","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/723-gpu-cuda\/","pubDate":"Mon, 28 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/723-gpu-cuda\/","description":"<blockquote>\n<p><a href=\"https:\/\/pytorch.org\/get-started\/locally\/\">https:\/\/pytorch.org\/get-started\/locally\/<\/a><\/p>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20241029090638157.png --><\/blockquote>\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20241029090638157.png\" alt=\"image-20241029090638157\"  \/>\n<\/p>"},{"title":"\u6df1\u5ea6\u5b66\u4e60\u5e38\u89c4Config\u8bad\u7ec3\u914d\u7f6e","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/724-dl-config\/","pubDate":"Mon, 28 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/724-dl-config\/","description":"<h1 id=\"1-\u4f18\u5316\u5668optimizer\">1. \u4f18\u5316\u5668optimizer<\/h1>\n<ul>\n<li>Adam\uff1a\u81ea\u9002\u5e94\u5b66\u4e60\u7387\u4f18\u5316\u5668<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>optimizer = torch.optim.Adam(model.parameters(), lr=<span style=\"color:#ff0;font-weight:bold\">1e-3<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>AdamW\uff1aAdam \u7684\u53d8\u4f53\uff0c\u52a0\u5165\u4e86\u6743\u91cd\u8870\u51cf\u6765\u6539\u5584\u6b63\u5219\u5316\u6548\u679c\uff0c\u5728 Transformer \u7c7b\u6a21\u578b\u4e2d\u8868\u73b0\u826f\u597d\u3002<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span>optimizer = torch.optim.AdamW(model.parameters(), lr=<span style=\"color:#ff0;font-weight:bold\">1e-3<\/span>, weight_decay=<span style=\"color:#ff0;font-weight:bold\">1e-2<\/span>)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><blockquote>\n<p>LAMB \u662f\u4e13\u4e3a\u5927\u6279\u91cf\u8bad\u7ec3\u8bbe\u8ba1\u7684\u4f18\u5316\u5668\uff0c\u9002\u5408\u5927\u578b\u6a21\u578b\uff08e.g. BERT\uff09\u3002<\/p>"},{"title":"Flash Attention\u6ce8\u610f\u529b\u4f18\u5316","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/725-flash-attention\/","pubDate":"Mon, 28 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/725-flash-attention\/","description":"<p><strong>\u6ce8\u610f\u529b\u8ba1\u7b97<\/strong><\/p>\n<ul>\n<li><strong>\u6ce8\u610f\u529b<\/strong>\u8ba1\u7b97\u7684\u4e09\u8981\u7d20\u5206\u522b\u662f\uff1aQuery\uff0c Key\uff0cValue\u3002\u800c\u5728<strong>\u81ea\u6ce8\u610f\u529b<\/strong>\u8ba1\u7b97\u4e2d\uff0c\u4e09\u8005\u5219\u662f\u7b49\u4ef7\u7684\u3002<\/li>\n<li>\u7ed3\u5408\u5982\u4e0b\u56fe\u793a\u4f8b\uff1a\u4e00\u4e2a\u5e8f\u5217\u67092\u4e2a\u8bcd\u5143\uff0c\u6bcf\u4e2a\u8bcd\u5143\u67093\u4e2a\u7279\u5f81 ,\u5373\u8f93\u5165\u4e3a(2, 3)\n<ul>\n<li>\u6bcf\u4e2aQuery\u8bcd\u5143\u4f1a\u8ba1\u7b97\u4e0e\u5176\u5b83\u8bcd\u5143Key\u7684\u201c\u76f8\u4f3c\u5ea6\u201d\uff08\u5305\u62ec\u81ea\u5df1\uff09\uff0c\u518d\u7ecf\u8fc7softmax\uff08\u6bcf\u884c\u7684\u548c\u7b49\u4e8e1\uff09\u8f6c\u6362\uff0c\u5f97\u5230 2 \u00d7 2 \u6743\u91cd\u77e9\u9635<\/li>\n<li>\u7136\u540e\u5c06\u5176\u4e0eValue\u77e9\u9635\u8fdb\u884c\u4e58\u6cd5\u8fd0\u7b97(2, 2) \u00d7 (2, 3)\uff0c\u5f97\u5230\u65b0\u7684(2, 3)\u8f93\u51fa\u7ed3\u679c\n<ul>\n<li>\u5f62\u8c61\u7406\u89e3\uff1a\u5bf9\u4e8e\u8bcd\u5143A\u7684\u8f93\u51fa\u7279\u5f811\uff0c\u7b49\u4e8e\u8f93\u5165\u8bcd\u5143A, B\u7684\u7279\u5f81\u7684\u52a0\u6743\u548c\u3002<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>\u591a\u5934\u6ce8\u610f\u529b<\/strong>\uff1a\u672c\u8d28\u4e0a\u53ef\u4ee5\u7406\u89e3\u4e3a\u5c06\u7279\u5f81\u7ef4\u5ea6\u5206\u6210\u591a\u4e2a\u90e8\u5206\uff0c\u6bcf\u4e2a\u90e8\u5206\u79f0\u4e3a\u4e00\u4e2a\u201c\u5934\u201d\u3002\u6bcf\u4e2a\u5934\u72ec\u7acb\u8fdb\u884c\u6ce8\u610f\u529b\u8ba1\u7b97\uff0c\u7136\u540e\u5c06\u6240\u6709\u5934\u7684\u8f93\u51fa\u5408\u5e76\u5728\u4e00\u8d77\uff1b\u4ee5\u671f\u5b66\u4e60\u4e0d\u540c\u7684\u5173\u7cfb\u548c\u6a21\u5f0f\u3002<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images2\/main\/img01\/image-20241027123614983.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20241027123614983.png\" alt=\"image-20241027123614983\"  \/>\n<\/p>"},{"title":"\u673a\u5668\u5b66\u4e60\u65e5\u5fd7\u6307\u6807log\u8bb0\u5f55","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/726-ml-logging\/","pubDate":"Mon, 28 Oct 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/726-ml-logging\/","description":"<blockquote>\n<p>\u5728\u6df1\u5ea6\/\u673a\u5668\u5b66\u4e60\u6a21\u578b\u8bad\u7ec3\u65f6\uff0c\u6709\u5fc5\u8981\u5c55\u793a\u6216\u8005\u8bb0\u5f55\u6bcf\u4e2abatch\/epoch\u7684\u5404\u79cd\u635f\u5931\u4ee5\u53ca\u7cbe\u5ea6\u4fe1\u606f\u3002\u9664\u4e86\u6700\u7b80\u5355\u7684print\u65b9\u5f0f\uff0c\u76ee\u524d\u6709\u591a\u79cd\u5e93\u63d0\u4f9b\u4e86\u9ad8\u7ea7\u7684API\u5b9e\u73b0\u65b9\u5f0f\u3002\u4e0b\u9762\u5c31scGPT\u9879\u76ee\u7684\u5b66\u4e60\u8fc7\u7a0b\uff0c\u6574\u7406\u4e09\u79cd\u65b9\u5f0f\u3002<\/p>"},{"title":"torch\u5f20\u91cf\u7684\u7ef4\u5ea6\u64cd\u4f5c","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/727-tensor-dim\/","pubDate":"Tue, 05 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/727-tensor-dim\/","description":"<blockquote>\n<p>\u5728\u6df1\u5ea6\u5b66\u4e60\u7684\u524d\u5411\u4f20\u64ad\u4e2d\uff0c\u6700\u91cd\u8981\u7684\u662f\u7406\u89e3\u6bcf\u4e2a\u8ba1\u7b97\u6b65\u9aa4\u7684\u8f93\u5165\u524d\u4e0e\u8f93\u5165\u540e\u7684\u7ef4\u5ea6\u5f62\u72b6\u3002\u4e0e\u4e4b\u5bf9\u5e94\u7684\u65f6\u9700\u8981\u719f\u6089\u4e00\u4e9b\u5e38\u89c1\u7684\u7ef4\u5ea6\u64cd\u4f5c\u65b9\u6cd5\uff0c\u6839\u636e\u9879\u76ee\u7684\u5b66\u4e60\u603b\u7ed3\u8bb0\u5f55\u5982\u4e0b\uff1a<\/p>"},{"title":"\u5355\u673a\u591a\u5361torchrun\u5206\u5e03\u5f0f\u8bad\u7ec3","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/728-torchrun\/","pubDate":"Sat, 09 Nov 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/728-torchrun\/","description":"<h1 id=\"1-\u80cc\u666f\">1. \u80cc\u666f<\/h1>\n<p>DDP\u5206\u5e03\u5f0f\u8bad\u7ec3\u4e0eDP\u5e76\u884c\u8bad\u7ec3<\/p>\n<p>\u5728\u4e4b\u524d\u4e86\u89e3<a href=\"https:\/\/lishensuo.github.io\/posts\/bioinfo\/715d2l-%E7%AC%AC%E5%8D%81%E4%B8%80%E5%8F%8A%E5%8D%81%E4%BA%8C%E7%AB%A0%E4%BC%98%E5%8C%96%E7%AE%97%E6%B3%95%E5%A4%9Agpu%E5%B9%B6%E8%A1%8C\/#5-%e5%a4%9agpu%e8%ae%ad%e7%bb%83\">\u591aGPU\u8bad\u7ec3<\/a>\u65f6\uff0c\u5b66\u4e60\u8fc7\u4e00\u79cd\u6570\u636e\u5e76\u884c\u65b9\u5f0fDataParallel (<strong>DP<\/strong>)\u3002\u5176\u6838\u5fc3\u5c06\u6a21\u578b\u590d\u5236\u5230\u6bcf\u4e2a GPU\uff0c\u7136\u540e\u5728\u6bcf\u4e2a GPU \u4e0a\u5206\u914d\u4e00\u5c0f\u90e8\u5206\u6570\u636e\u5e76\u884c\u6267\u884c\u8ba1\u7b97\u3002\u6700\u540e\uff0c\u4e3b GPU \u6c47\u603b\u6240\u6709 GPU \u7684\u68af\u5ea6\u5e76\u66f4\u65b0\u6a21\u578b\u53c2\u6570\u3002\u5b9e\u73b0\u89d2\u5ea6\u4e5f\u975e\u5e38\u7b80\u5355\uff0c\u4f7f\u7528<code>nn.DataParallel()<\/code>\u5373\u53ef\u3002<\/p>"},{"title":"torch\u6a21\u578b\u7ec4\u6210\u6a21\u5757\u53c2\u6570\u67e5\u8be2\u3001\u7ba1\u7406\u3001\u4fdd\u5b58","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/729-pytorch-model\/","pubDate":"Sat, 14 Dec 2024 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/729-pytorch-model\/","description":"<h2 id=\"1-\u793a\u4f8b\u6a21\u578b\">1. \u793a\u4f8b\u6a21\u578b<\/h2>\n<ul>\n<li>\u4e24\u5c42MLP\u7684\u795e\u7ecf\u7f51\u7edc<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch.nn <span style=\"color:#fff;font-weight:bold\">as<\/span> nn\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch.nn.functional <span style=\"color:#fff;font-weight:bold\">as<\/span> F\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">class<\/span> SimpleMLP(nn.Module):\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">def<\/span> __init__(<span style=\"color:#fff;font-weight:bold\">self<\/span>, input_size, hidden_size, output_size):\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">super<\/span>(SimpleMLP, <span style=\"color:#fff;font-weight:bold\">self<\/span>).__init__()\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">self<\/span>.fc1 = nn.Linear(input_size, hidden_size)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">self<\/span>.fc2 = nn.Linear(hidden_size, output_size)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">def<\/span> forward(<span style=\"color:#fff;font-weight:bold\">self<\/span>, x):\n<\/span><\/span><span style=\"display:flex;\"><span>        x = F.relu(<span style=\"color:#fff;font-weight:bold\">self<\/span>.fc1(x))\n<\/span><\/span><span style=\"display:flex;\"><span>        x = <span style=\"color:#fff;font-weight:bold\">self<\/span>.fc2(x)\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">return<\/span> x\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Example usage<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>input_size = <span style=\"color:#ff0;font-weight:bold\">256<\/span>   <span style=\"color:#007f7f\"># Number of input features<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>hidden_size = <span style=\"color:#ff0;font-weight:bold\">128<\/span>   <span style=\"color:#007f7f\"># Number of neurons in the hidden layer<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>output_size = <span style=\"color:#ff0;font-weight:bold\">2<\/span>   <span style=\"color:#007f7f\"># Number of output classes<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>model = SimpleMLP(input_size, hidden_size, output_size)\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"2-\u7ec4\u6210\u6a21\u5757\u67e5\u8be2\">2. \u7ec4\u6210\u6a21\u5757\u67e5\u8be2<\/h2>\n<ul>\n<li>\u901a\u8fc7\u9012\u5f52\u7684\u65b9\u5f0f\u904d\u5386\u6a21\u578b\u7684\u6240\u6709\u5c42\uff0c\u5305\u62ec\u5d4c\u5957\u5728\u5176\u4ed6\u5c42\u5185\u7684\u5b50\u6a21\u5757<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.nn.Module\u7c7b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>model.modules\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> module in model.modules():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;Module: <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>module<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> name, module in model.named_modules():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>name<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">: <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>module<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc1: Linear(in_features=256, out_features=128, bias=True)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc2: Linear(in_features=128, out_features=2, bias=True)<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"3-\u6a21\u578b\u53c2\u6570\u67e5\u8be2\">3. \u6a21\u578b\u53c2\u6570\u67e5\u8be2<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.nn.Parameter\u7c7b<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> param in model.parameters():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>param.shape<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> name, param in model.named_parameters():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>name<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">: <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>param.shape<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc1.weight: torch.Size([128, 256])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc1.bias: torch.Size([128])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc2.weight: torch.Size([2, 128])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># fc2.bias: torch.Size([2])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">for<\/span> name, param in model.fc1.named_parameters():\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>name<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">: <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>param.shape<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># weight: torch.Size([128, 256])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># bias: torch.Size([128])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u6a21\u578b\u603b\u53c2\u6570\u91cf<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>total_parameters = <span style=\"color:#fff;font-weight:bold\">sum<\/span>(p.numel() <span style=\"color:#fff;font-weight:bold\">for<\/span> p in model.parameters())\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u67e5\u770b\u5177\u4f53\u67d0\u4e00\u5c42\u7684\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>param = <span style=\"color:#fff;font-weight:bold\">next<\/span>(<span style=\"color:#fff;font-weight:bold\">iter<\/span>(model.fc1.parameters()))\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(param)\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.nn.parameter.Parameter<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>param.shape\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># torch.Size([128, 256])<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>param.numel()\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># 32768<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>param.requires_grad\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># True<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u53c2\u6570\u51bb\u7ed3\uff0c\u5373\u4e0d\u66f4\u65b0\u8be5module\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>param.requires_grad=<span style=\"color:#fff;font-weight:bold\">False<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"4-\u6a21\u578b\u53c2\u6570\u4fdd\u5b58\u4e0e\u52a0\u8f7d\">4. \u6a21\u578b\uff08\u53c2\u6570\uff09\u4fdd\u5b58\u4e0e\u52a0\u8f7d<\/h2>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">type<\/span>(model.state_dict())\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># save<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>torch.save(model.state_dict(), <span style=\"color:#0ff;font-weight:bold\">&#39;model.pth&#39;<\/span>)  <span style=\"color:#007f7f\"># pt\u540e\u7f00\u4e5f\u53ef<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># load<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>model.load_state_dict(torch.load(<span style=\"color:#0ff;font-weight:bold\">&#39;model.pth&#39;<\/span>))\n<\/span><\/span><span style=\"display:flex;\"><span>pretrained_params = torch.load(model_pt, map_location=<span style=\"color:#0ff;font-weight:bold\">&#39;cuda:2&#39;<\/span>) \n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><ul>\n<li>\u4e00\u4e2a\u5b9e\u9645\u52a0\u8f7d\u7684\u793a\u4f8b\u51fd\u6570<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">23\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">24\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">25\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">26\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">27\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">28\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">29\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">30\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">31\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">32\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">33\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">34\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">35\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">36\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">37\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">38\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">39\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">40\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">41\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">42\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">43\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">44\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">45\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">46\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">47\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">48\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">49\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># <\/span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">def<\/span> load_pretrained(\n<\/span><\/span><span style=\"display:flex;\"><span>    model: torch.nn.Module,\n<\/span><\/span><span style=\"display:flex;\"><span>    pretrained_params: <span style=\"color:#fff;font-weight:bold\">dict<\/span> = <span style=\"color:#fff;font-weight:bold\">None<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    strict: <span style=\"color:#fff;font-weight:bold\">bool<\/span> = <span style=\"color:#fff;font-weight:bold\">False<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    prefix: <span style=\"color:#fff;font-weight:bold\">list<\/span> = <span style=\"color:#fff;font-weight:bold\">None<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    use_flash_attn = <span style=\"color:#fff;font-weight:bold\">True<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>    verbose: <span style=\"color:#fff;font-weight:bold\">bool<\/span> = <span style=\"color:#fff;font-weight:bold\">True<\/span>,\n<\/span><\/span><span style=\"display:flex;\"><span>) -&gt; torch.nn.Module:\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#007f7f\"># \u4fee\u6539\u7279\u5b9a\u53c2\u6570\u7684key name<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> not use_flash_attn:\n<\/span><\/span><span style=\"display:flex;\"><span>        pretrained_params = {\n<\/span><\/span><span style=\"display:flex;\"><span>            k.replace(<span style=\"color:#0ff;font-weight:bold\">&#34;Wqkv.&#34;<\/span>, <span style=\"color:#0ff;font-weight:bold\">&#34;in_proj_&#34;<\/span>): v <span style=\"color:#fff;font-weight:bold\">for<\/span> k, v in pretrained_params.items()\n<\/span><\/span><span style=\"display:flex;\"><span>        }\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#007f7f\"># \u53ea\u52a0\u8f7d\u7279\u5b9akeys\u7684\u53c2\u6570<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> prefix is not <span style=\"color:#fff;font-weight:bold\">None<\/span> and <span style=\"color:#fff;font-weight:bold\">len<\/span>(prefix) &gt; <span style=\"color:#ff0;font-weight:bold\">0<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#fff;font-weight:bold\">isinstance<\/span>(prefix, <span style=\"color:#fff;font-weight:bold\">str<\/span>):\n<\/span><\/span><span style=\"display:flex;\"><span>            prefix = [prefix]\n<\/span><\/span><span style=\"display:flex;\"><span>        pretrained_params = {\n<\/span><\/span><span style=\"display:flex;\"><span>            k: v\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">for<\/span> k, v in pretrained_params.items()\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">if<\/span> <span style=\"color:#fff;font-weight:bold\">any<\/span>(k.startswith(p) <span style=\"color:#fff;font-weight:bold\">for<\/span> p in prefix)\n<\/span><\/span><span style=\"display:flex;\"><span>        }\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>    model_dict = model.state_dict()\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#007f7f\"># \u4e25\u683c\u52a0\u8f7d\uff1a\u5168\u90e8\u53c2\u6570\u9700\u8981\u5339\u914d<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">if<\/span> strict:\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">if<\/span> verbose:\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">for<\/span> k, v in pretrained_params.items():\n<\/span><\/span><span style=\"display:flex;\"><span>                <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;Loading parameter <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>k<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\"> with shape <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>v.shape<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>        model_dict.update(pretrained_params)\n<\/span><\/span><span style=\"display:flex;\"><span>        model.load_state_dict(model_dict)\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#007f7f\"># \u90e8\u5206\u52a0\u8f7d\uff1a\u53ea\u52a0\u8f7d\u90e8\u5206\u80fd\u591f\u5339\u914d\u7684\u53c2\u6570\uff08key name\u4ee5\u53ca value shape\uff09<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">else<\/span>:\n<\/span><\/span><span style=\"display:flex;\"><span>        <span style=\"color:#fff;font-weight:bold\">if<\/span> verbose:\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">for<\/span> k, v in pretrained_params.items():\n<\/span><\/span><span style=\"display:flex;\"><span>                <span style=\"color:#fff;font-weight:bold\">if<\/span> k in model_dict and v.shape == model_dict[k].shape:\n<\/span><\/span><span style=\"display:flex;\"><span>                    <span style=\"color:#fff;font-weight:bold\">print<\/span>(<span style=\"color:#0ff;font-weight:bold\">f<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;Loading parameter <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>k<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\"> with shape <\/span><span style=\"color:#0ff;font-weight:bold\">{<\/span>v.shape<span style=\"color:#0ff;font-weight:bold\">}<\/span><span style=\"color:#0ff;font-weight:bold\">&#34;<\/span>)\n<\/span><\/span><span style=\"display:flex;\"><span>        pretrained_params = {\n<\/span><\/span><span style=\"display:flex;\"><span>            k: v\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">for<\/span> k, v in pretrained_params.items()\n<\/span><\/span><span style=\"display:flex;\"><span>            <span style=\"color:#fff;font-weight:bold\">if<\/span> k in model_dict and v.shape == model_dict[k].shape\n<\/span><\/span><span style=\"display:flex;\"><span>        }\n<\/span><\/span><span style=\"display:flex;\"><span>        model_dict.update(pretrained_params)\n<\/span><\/span><span style=\"display:flex;\"><span>        model.load_state_dict(model_dict)\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>    <span style=\"color:#fff;font-weight:bold\">return<\/span> model\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div>"},{"title":"Hugging face(4) Bert\u6a21\u578b\u53caCollator\u4e0eTrainer","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/730-huggingface-bert\/","pubDate":"Fri, 24 Jan 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/730-huggingface-bert\/","description":"<h1 id=\"1-collator\u6570\u636e\u5904\u7406\">1. Collator\u6570\u636e\u5904\u7406<\/h1>\n<ul>\n<li><strong>\u76ee\u7684<\/strong>\uff1a\u5c06dataset\u7684\u521d\u59cb\u6570\u636e\u8fdb\u884c\u89c4\u8303\u5316\u6279\u91cf\u5904\u7406\uff0c\u7528\u4ee5\u540e\u7eed\u7684\u524d\u5411\u8ba1\u7b97<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 8\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\"> 9\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">10\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">11\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">12\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">13\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">14\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">15\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">16\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">17\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">18\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">19\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">20\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">21\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">22\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># Start from dataset (Sequences could have diff lengths)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>Dataset({\n<\/span><\/span><span style=\"display:flex;\"><span>    features: [<span style=\"color:#0ff;font-weight:bold\">&#39;input_ids&#39;<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>    num_rows: <span style=\"color:#ff0;font-weight:bold\">5<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>})\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># End to encoded batch input (BatchEncoding\u683c\u5f0f)<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>{<span style=\"color:#0ff;font-weight:bold\">&#39;input_ids&#39;<\/span>: tensor([[<span style=\"color:#ff0;font-weight:bold\">350<\/span>, <span style=\"color:#ff0;font-weight:bold\">241<\/span>, <span style=\"color:#ff0;font-weight:bold\">345<\/span>, <span style=\"color:#ff0;font-weight:bold\">705<\/span>, <span style=\"color:#ff0;font-weight:bold\">695<\/span>,   <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">427<\/span>, <span style=\"color:#ff0;font-weight:bold\">645<\/span>,  <span style=\"color:#ff0;font-weight:bold\">99<\/span>, <span style=\"color:#ff0;font-weight:bold\">943<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">196<\/span>, <span style=\"color:#ff0;font-weight:bold\">464<\/span>, <span style=\"color:#ff0;font-weight:bold\">546<\/span>, <span style=\"color:#ff0;font-weight:bold\">626<\/span>, <span style=\"color:#ff0;font-weight:bold\">413<\/span>,   <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">973<\/span>,  <span style=\"color:#ff0;font-weight:bold\">98<\/span>, <span style=\"color:#ff0;font-weight:bold\">824<\/span>,   <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">410<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">475<\/span>, <span style=\"color:#ff0;font-weight:bold\">665<\/span>,   <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">164<\/span>, <span style=\"color:#ff0;font-weight:bold\">306<\/span>, <span style=\"color:#ff0;font-weight:bold\">788<\/span>,  <span style=\"color:#ff0;font-weight:bold\">53<\/span>, <span style=\"color:#ff0;font-weight:bold\">562<\/span>, <span style=\"color:#ff0;font-weight:bold\">232<\/span>, <span style=\"color:#ff0;font-weight:bold\">216<\/span>, <span style=\"color:#ff0;font-weight:bold\">252<\/span>, <span style=\"color:#ff0;font-weight:bold\">990<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [  <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">966<\/span>, <span style=\"color:#ff0;font-weight:bold\">734<\/span>, <span style=\"color:#ff0;font-weight:bold\">897<\/span>, <span style=\"color:#ff0;font-weight:bold\">171<\/span>, <span style=\"color:#ff0;font-weight:bold\">357<\/span>, <span style=\"color:#ff0;font-weight:bold\">217<\/span>, <span style=\"color:#ff0;font-weight:bold\">850<\/span>, <span style=\"color:#ff0;font-weight:bold\">529<\/span>, <span style=\"color:#ff0;font-weight:bold\">895<\/span>, <span style=\"color:#ff0;font-weight:bold\">728<\/span>, <span style=\"color:#ff0;font-weight:bold\">234<\/span>, <span style=\"color:#ff0;font-weight:bold\">799<\/span>,   <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">713<\/span>,  <span style=\"color:#ff0;font-weight:bold\">76<\/span>,   <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">428<\/span>, <span style=\"color:#ff0;font-weight:bold\">913<\/span>, <span style=\"color:#ff0;font-weight:bold\">890<\/span>, <span style=\"color:#ff0;font-weight:bold\">143<\/span>, <span style=\"color:#ff0;font-weight:bold\">992<\/span>, <span style=\"color:#ff0;font-weight:bold\">832<\/span>, <span style=\"color:#ff0;font-weight:bold\">963<\/span>, <span style=\"color:#ff0;font-weight:bold\">555<\/span>,  <span style=\"color:#ff0;font-weight:bold\">18<\/span>, <span style=\"color:#ff0;font-weight:bold\">354<\/span>, <span style=\"color:#ff0;font-weight:bold\">455<\/span>]]), \n<\/span><\/span><span style=\"display:flex;\"><span> <span style=\"color:#0ff;font-weight:bold\">&#39;attention_mask&#39;<\/span>: tensor([[<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">0<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [<span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>, <span style=\"color:#ff0;font-weight:bold\">1<\/span>]]), \n<\/span><\/span><span style=\"display:flex;\"><span> <span style=\"color:#0ff;font-weight:bold\">&#39;labels&#39;<\/span>: tensor([[-<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">716<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [-<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">665<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">686<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [-<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,   <span style=\"color:#ff0;font-weight:bold\">56<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [ <span style=\"color:#ff0;font-weight:bold\">619<\/span>,  <span style=\"color:#ff0;font-weight:bold\">966<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">357<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>],\n<\/span><\/span><span style=\"display:flex;\"><span>        [-<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">218<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>,  <span style=\"color:#ff0;font-weight:bold\">963<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>, -<span style=\"color:#ff0;font-weight:bold\">100<\/span>]])}\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><p>\u5e38\u89c1\u7684\u5173\u952e\u5b57\u6bb5\u5305\u62ec\uff1a<\/p>"},{"title":"Faiss\u5411\u91cf\u6570\u636e\u5e93\u76f8\u4f3c\u641c\u7d22","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/731-faiss\/","pubDate":"Fri, 18 Apr 2025 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/731-faiss\/","description":"<p><strong>Faiss (Facebook AI Similarity Search)<\/strong> \u662f\u4e00\u4e2a\u7528\u4e8e\u9ad8\u6548\u76f8\u4f3c\u5411\u91cf\u641c\u7d22\u7684\u5e93\uff0c\u7279\u522b\u9002\u5408\u5904\u7406\u5927\u89c4\u6a21\u5411\u91cf\u6570\u636e\u3002<\/p>\n<ul>\n<li>\u5b83\u7684\u6838\u5fc3\u529f\u80fd\u662f\u7ed9\u5b9a\u4e00\u4e2a\u5411\u91cf\u6570\u636e\u5e93\uff0c\u4e3a\u5f53\u524d\u7684query vector(s) \u5bfb\u627eTop-K\u4e2a\u76f8\u4f3c\u5411\u91cf\u3002<\/li>\n<li>\u6b64\u5916\u4e5f\u652f\u6301KNN\u805a\u7c7b\uff0cPCA\u964d\u7ef4\uff0c\u6570\u636e\u91cf\u5316\u7b49\u6a21\u5757\u3002<\/li>\n<li>\u5b98\u65b9\u6587\u6863\uff1ahttps:\/\/github.com\/facebookresearch\/faiss\/wiki<\/li>\n<\/ul>\n<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u5b89\u88c5\u65b9\u5f0f: \u4e00\u4e2a\u73af\u5883\u4e0d\u80fd\u540c\u65f6\u5b89\u88c5cpu\u4e0egpu\u4e24\u4e2a\u7248\u672c<\/span>\n<\/span><\/span><span style=\"display:flex;\"><span>pip install faiss-cpu\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span>pip install faiss-gpu\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#007f7f\"># \u4e0b\u9762\u4ee5cpu\u7248\u672c\u4e3a\u4f8b<\/span>\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h1 id=\"1-\u76f8\u4f3ctop-k\u67e5\u627e\">1. \u76f8\u4f3cTop-K\u67e5\u627e<\/h1>\n<p>Faiss\u901a\u8fc7\u6784\u5efa\u4e00\u4e2aIndex\uff08\u7d22\u5f15\uff09\u5bf9\u8c61\uff0c\u7528\u4e8e\u5efa\u7acb\u53ef\u5b9e\u73b0\u5feb\u901f\u76f8\u4f3c\u641c\u7d22\u7684\u6570\u636e\u7ed3\u6784\u3002<\/p>"},{"title":"\u56fe\u795e\u7ecf\u7f51\u7edcDGL-01-DGL\u57fa\u7840","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/801-dgl-basics\/","pubDate":"Sun, 31 Jul 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/801-dgl-basics\/","description":"<ul>\n<li>homogeneous graph \uff1a \u4e00\u79cd\u8282\u70b9\uff0c\u4e00\u79cd\u8fb9<\/li>\n<li>heterogeneous graph: \u591a\u79cd\u8282\u70b9\uff0c\u591a\u79cd\u8fb9<\/li>\n<li>bipartite graph    : \u4e24\u79cd\u8282\u70b9\uff0c\u4e00\u79cd\u8fb9<\/li>\n<\/ul>\n<!-- \u539f\u94fe\u63a5\uff1ahttps:\/\/raw.githubusercontent.com\/lishensuo\/images\/main\/image-20220730204438968.png -->\n<p><img loading=\"lazy\" src=\"https:\/\/lishensuo.github.io\/img\/bioinfo\/image-20220730204438968.png\" alt=\"image-20220730204438968\"  \/>\n<\/p>"},{"title":"\u56fe\u795e\u7ecf\u7f51\u7edcDGL-02\u540c\u6784\u56fe_\u8282\u70b9\u5206\u7c7b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/802-dgl-node-classification\/","pubDate":"Sun, 28 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/802-dgl-node-classification\/","description":"<div class=\"highlight\"><div style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\">\n<table style=\"border-spacing:0;padding:0;margin:0;border:0;\"><tr><td style=\"vertical-align:top;padding:0;margin:0;border:0;\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">1\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">2\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">3\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">4\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">5\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">6\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">7\n<\/span><span style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#727272\">8\n<\/span><\/code><\/pre><\/td>\n<td style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\">\n<pre tabindex=\"0\" style=\"color:#e5e5e5;background-color:#000;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"><code class=\"language-python\" data-lang=\"python\"><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> dgl\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> dgl.nn  <span style=\"color:#fff;font-weight:bold\">as<\/span> dglnn\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch.nn <span style=\"color:#fff;font-weight:bold\">as<\/span> nn\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> torch.nn.functional <span style=\"color:#fff;font-weight:bold\">as<\/span> F\n<\/span><\/span><span style=\"display:flex;\"><span>\n<\/span><\/span><span style=\"display:flex;\"><span><span style=\"color:#fff;font-weight:bold\">import<\/span> numpy <span style=\"color:#fff;font-weight:bold\">as<\/span> np\n<\/span><\/span><\/code><\/pre><\/td><\/tr><\/table>\n<\/div>\n<\/div><h2 id=\"0\u9884\u6d4b\u4efb\u52a1\u4e0e\u6570\u636e\">0\u3001\u9884\u6d4b\u4efb\u52a1\u4e0e\u6570\u636e<\/h2>\n<p>\u9884\u6d4b\u8bba\u6587\u5c5e\u4e8e\u54ea\u4e00\u79cd\u7c7b\u522b\uff0c\u5373\u4e3a\u591a\u5206\u7c7b\u95ee\u9898<\/p>"},{"title":"\u56fe\u795e\u7ecf\u7f51\u7edcDGL-03\u540c\u6784\u56fe_\u8fb9\u56de\u5f52","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/803-dgl-edge-regression\/","pubDate":"Sun, 28 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/803-dgl-edge-regression\/","description":"<p>\uff081\uff09\u8fb9\u56de\u5f52\u95ee\u9898\uff0c\u5bf9\u56fe\u4e2d\u5df2\u5b58\u5728\u7684\u8fb9\u7684\u5b9a\u91cf(\u56de\u5f52)\/\u5b9a\u6027(\u5206\u7c7b)\uff0c\u7ed3\u5408\u8bad\u7ec3\u5f97\u5230\u7684\u8fb9\u7684embedding\u505aGNN\u795e\u7ecf\u7f51\u7edc\u9884\u6d4b\u3002<\/p>\n<p>\uff082\uff09\u8fb9\u7684embedding\u901a\u5e38\u7531\u4e24\u7aef\u8282\u70b9\u8ba1\u7b97\u800c\u5f97\uff0c\u5e38\u91c7\u7528\u70b9\u79ef\u6216\u8005\u62fc\u63a5\u7684\u65b9\u5f0f\u3002\u800c\u8282\u70b9embedding\u7684\u66f4\u65b0\u540c\u524d\u3002<\/p>"},{"title":"\u56fe\u795e\u7ecf\u7f51\u7edcDGL-03\u540c\u6784\u56fe_\u8fb9\u9884\u6d4b","link":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/804-dgl-link-prediction\/","pubDate":"Sun, 28 Aug 2022 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/posts\/bioinfo\/804-dgl-link-prediction\/","description":"<p>\u8fb9\u7684\u9884\u6d4b\u95ee\u9898\u5373\u9884\u6d4b\u4e24\u4e2a\u8282\u70b9\u95f4\u662f\u5426\u53ef\u80fd\u5b58\u5728\u8fb9\uff0c\u53ef\u4ee5\u89c6\u4e3a\u4e8c\u5206\u7c7b\u95ee\u9898\u3002<\/p>\n<p>\u5728\u8bad\u7ec3\u65f6\uff0c\u9996\u5148\u540c\u6837\u8981\u5148\u66f4\u65b0\u8282\u70b9\u4fe1\u606f\uff0c\u7136\u540e\u8ba1\u7b97\u8fb9\u7684\u7279\u5f81&mdash;<\/p>\n<ul>\n<li>\u5c06\u56fe\u4e2d\u5df2\u77e5\u5b58\u5728\u7684\u8fb9\u4f5c\u4e3a\u9633\u6027\u8fb9\uff0c\u6807\u7b7e\u4e3a1<\/li>\n<li>\u968f\u673a\u62bd\u53d6\u56fe\u4e2d\u4e0d\u5b58\u5728\u8fb9\u7684\u4e24\u8282\u70b9\u7ec4\u6210\u7684\u8fb9\u4f5c\u4e3a\u9634\u6027\u8fb9\uff0c\u6807\u7b7e\u4e3a0<\/li>\n<\/ul>\n<h1 id=\"0\u9884\u6d4b\u6570\u636e\u4e0e\u4efb\u52a1\">0\u3001\u9884\u6d4b\u6570\u636e\u4e0e\u4efb\u52a1<\/h1>\n<p>\u5047\u8bbe100\u4e2a\u836f\u7269\u4e24\u4e24\u4e4b\u95f4\u5df2\u77e5\u5b58\u57281000\u4e2a\u76f8\u4e92\u4f5c\u7528\uff0c\u836f\u7269\u8282\u70b9\u670950\u4e2a\u7279\u5f81\u3002<\/p>"},{"title":{},"link":"https:\/\/lishensuo.github.io\/en\/about\/","pubDate":"Sat, 08 Jan 2022 23:33:37 +0800","guid":"https:\/\/lishensuo.github.io\/en\/about\/","description":"<hr>\n<ul>\n<li>\n<p>\u674e\u7533\u9501\uff0c\u7537\uff0c\u5728\u8bfb\u7814\u7a76\u751f\uff0c\u5b66\u4e60\u751f\u4fe1 ing<\/p>\n<\/li>\n<li>\n<p>\u6b64\u524d\u4ee5<u>\u5c0f\u8d1d\u5b66\u751f\u4fe1<\/u>\u4e3a\u6635\u79f0\u5728\u7b80\u4e66\u5e73\u53f0\u5199\u4e00\u4e9b\u5b66\u4e60\u5fc3\u5f97\u3002\u4e8e 2022 \u5e74 4 \u6708 10 \u65e5\u521b\u5efa\u6b64\u535a\u5ba2\uff0c\u8bb0\u5f55\u4eca\u540e\u5b66\u4e60\u751f\u4fe1\u7684\u8fc7\u7a0b\u3002<\/p>\n<\/li>\n<li>\n<p>\u5982\u4f60\u4e5f\u5bf9\u535a\u5ba2\u7684\u5185\u5bb9\u611f\u5174\u8da3\uff0c\u6b22\u8fce\u90ae\u4ef6\u4ea4\u6d41\uff0c\u4e00\u8d77\u5b66\u4e60\uff01<\/p>"},{"title":{},"link":"https:\/\/lishensuo.github.io\/en\/search.fr\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/lishensuo.github.io\/en\/search.fr\/","description":{}}]}}