add logistic regression details

This commit is contained in:
shenjianZ 2025-01-20 16:06:02 +08:00
parent 5ea5e3cba1
commit dc75bd64f1
49 changed files with 824 additions and 225 deletions

File diff suppressed because one or more lines are too long

View File

@ -153,15 +153,15 @@
}
}
detectApple()
})(window)</script><meta name="generator" content="Hexo 7.3.0"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">15</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><hr class="custom-hr"/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page fixed" id="page-header" style="background-image: url('/img/site01.jpg')"><nav id="nav"><span id="blog-info"><a href="/" title="QuickReference"><span class="site-name">QuickReference</span></a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search" href="javascript:void(0);"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="page-site-info"><h1 id="site-title">About me</h1></div></header><main class="layout" id="content-inner"><div id="page"><div id="article-container"><p>落花飞舞,翩若惊鸿。</p>
</div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">shenjianZ</div><div class="author-info__description">一份快捷简便的文档,便于查阅编程的细节</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">15</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/shenjianz"><i class="fab fa-github"></i><span>Follow Me</span></a><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/shenjianZ" target="_blank" title="Github"><i class="fab fa-github" style="color: #24292e;"></i></a><a class="social-icon" href="mailto:15202078626@163.com" target="_blank" title="Email"><i class="fas fa-envelope" style="color: #4a7dbe;"></i></a></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">一个简单快捷的文档知识点查阅网站</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/52662.html" title="线性回归">线性回归</a><time datetime="2025-01-19T08:46:51.000Z" title="发表于 2025-01-19 16:46:51">2025-01-19</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/12462.html" title="C lang">C lang</a><time datetime="2025-01-15T12:41:26.000Z" title="发表于 2025-01-15 20:41:26">2025-01-15</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/29139.html" title="k近邻算法K-Nearest NeighborsKNN">k近邻算法K-Nearest NeighborsKNN</a><time datetime="2025-01-13T09:20:59.000Z" title="发表于 2025-01-13 17:20:59">2025-01-13</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61251.html" title="Hadoop集群Zookeeper配置">Hadoop集群Zookeeper配置</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61253.html" title="Hadoop集群搭建基础环境">Hadoop集群搭建基础环境</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
})(window)</script><meta name="generator" content="Hexo 7.3.0"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">16</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">7</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><hr class="custom-hr"/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page fixed" id="page-header" style="background-image: url('/img/site01.jpg')"><nav id="nav"><span id="blog-info"><a href="/" title="QuickReference"><span class="site-name">QuickReference</span></a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search" href="javascript:void(0);"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="page-site-info"><h1 id="site-title">About me</h1></div></header><main class="layout" id="content-inner"><div id="page"><div id="article-container"><p>落花飞舞,翩若惊鸿。</p>
</div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">shenjianZ</div><div class="author-info__description">一份快捷简便的文档,便于查阅编程的细节</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">16</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">7</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/shenjianz"><i class="fab fa-github"></i><span>Follow Me</span></a><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/shenjianZ" target="_blank" title="Github"><i class="fab fa-github" style="color: #24292e;"></i></a><a class="social-icon" href="mailto:15202078626@163.com" target="_blank" title="Email"><i class="fas fa-envelope" style="color: #4a7dbe;"></i></a></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">一个简单快捷的文档知识点查阅网站</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/60504.html" title="逻辑回归">逻辑回归</a><time datetime="2025-01-20T07:30:08.000Z" title="发表于 2025-01-20 15:30:08">2025-01-20</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/52662.html" title="线性回归">线性回归</a><time datetime="2025-01-19T08:46:51.000Z" title="发表于 2025-01-19 16:46:51">2025-01-19</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/12462.html" title="C lang">C lang</a><time datetime="2025-01-15T12:41:26.000Z" title="发表于 2025-01-15 20:41:26">2025-01-15</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/29139.html" title="k近邻算法K-Nearest NeighborsKNN">k近邻算法K-Nearest NeighborsKNN</a><time datetime="2025-01-13T09:20:59.000Z" title="发表于 2025-01-13 17:20:59">2025-01-13</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61253.html" title="Hadoop集群搭建基础环境">Hadoop集群搭建基础环境</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>分类</span>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/"><span class="card-category-list-name">古文观止</span><span class="card-category-list-count">1</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/uniapp/" style="font-size: 1.5em; color: #99a9bf">uniapp</a> <a href="/tags/machinelearning/" style="font-size: 1.1em; color: #999">machinelearning</a> <a href="/tags/C-C/" style="font-size: 1.1em; color: #999">C C++</a> <a href="/tags/linear-regression/" style="font-size: 1.1em; color: #999">linear-regression</a> <a href="/tags/%E7%BD%91%E7%BB%9C%E4%BB%A3%E7%90%86/" style="font-size: 1.1em; color: #999">网络代理</a> <a href="/tags/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/" style="font-size: 1.1em; color: #999">古文观止</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/01/"><span class="card-archive-list-date">一月 2025</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/09/"><span class="card-archive-list-date">九月 2024</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/08/"><span class="card-archive-list-date">八月 2024</span><span class="card-archive-list-count">8</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">15</div></div><div class="webinfo-item"><div class="item-name">已运行时间 :</div><div class="item-count" id="runtimeshow" data-publishDate="2024-07-30T16:00:00.000Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2025-01-19T09:10:22.191Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background: transparent"><div id="footer-wrap"><div class="copyright">&copy;2024 - 2025 By shenjianZ</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div><div class="footer_custom_text"><span>备案号豫ICP备2023019300号</span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js?v=4.13.0"></script><script src="/js/main.js?v=4.13.0"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0.33/dist/fancybox/fancybox.umd.min.js"></script><div class="js-pjax"></div><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1.1.3/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/%E7%BD%91%E7%BB%9C%E4%BB%A3%E7%90%86/" style="font-size: 1.1em; color: #999">网络代理</a> <a href="/tags/logistic-regression/" style="font-size: 1.1em; color: #999">logistic-regression</a> <a href="/tags/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/" style="font-size: 1.1em; color: #999">古文观止</a> <a href="/tags/linear-regression/" style="font-size: 1.1em; color: #999">linear-regression</a> <a href="/tags/machinelearning/" style="font-size: 1.1em; color: #999">machinelearning</a> <a href="/tags/C-C/" style="font-size: 1.1em; color: #999">C C++</a> <a href="/tags/uniapp/" style="font-size: 1.5em; color: #99a9bf">uniapp</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/01/"><span class="card-archive-list-date">一月 2025</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/09/"><span class="card-archive-list-date">九月 2024</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/08/"><span class="card-archive-list-date">八月 2024</span><span class="card-archive-list-count">8</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">16</div></div><div class="webinfo-item"><div class="item-name">已运行时间 :</div><div class="item-count" id="runtimeshow" data-publishDate="2024-07-30T16:00:00.000Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2025-01-20T08:05:36.213Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background: transparent"><div id="footer-wrap"><div class="copyright">&copy;2024 - 2025 By shenjianZ</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div><div class="footer_custom_text"><span>备案号豫ICP备2023019300号</span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js?v=4.13.0"></script><script src="/js/main.js?v=4.13.0"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0.33/dist/fancybox/fancybox.umd.min.js"></script><div class="js-pjax"></div><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1.1.3/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
POWERMODE.shake = true;
POWERMODE.mobile = false;
document.body.addEventListener('input', POWERMODE);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

File diff suppressed because one or more lines are too long

View File

@ -153,7 +153,7 @@
}
}
detectApple()
})(window)</script><meta name="generator" content="Hexo 7.3.0"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">15</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><hr class="custom-hr"/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page fixed" id="page-header" style="background-image: url('/img/site01.jpg')"><nav id="nav"><span id="blog-info"><a href="/" title="QuickReference"><span class="site-name">QuickReference</span></a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search" href="javascript:void(0);"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="page-site-info"><h1 id="site-title">link</h1></div></header><main class="layout" id="content-inner"><div id="page"><div id="article-container"><div class="flink"><h2 id="友情鏈接"><a href="#友情鏈接" class="headerlink" title="友情鏈接"></a>友情鏈接</h2><div class="flink-desc">那些人,那些事</div> <div class="flink-list">
})(window)</script><meta name="generator" content="Hexo 7.3.0"></head><body><div id="web_bg"></div><div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src="/img/avatar.jpg" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">16</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">7</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><hr class="custom-hr"/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="not-home-page fixed" id="page-header" style="background-image: url('/img/site01.jpg')"><nav id="nav"><span id="blog-info"><a href="/" title="QuickReference"><span class="site-name">QuickReference</span></a></span><div id="menus"><div id="search-button"><a class="site-page social-icon search" href="javascript:void(0);"><i class="fas fa-search fa-fw"></i><span> 搜索</span></a></div><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page group" href="javascript:void(0);"><i class="fa-fw fas fa-list"></i><span> List</span><i class="fas fa-chevron-down"></i></a><ul class="menus_item_child"><li><a class="site-page child" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></li><li><a class="site-page child" href="/movies/"><i class="fa-fw fas fa-video"></i><span> Movie</span></a></li></ul></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div><div class="menus_item"><a class="site-page" href="/about/"><i class="fa-fw fas fa-heart"></i><span> About</span></a></div></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="page-site-info"><h1 id="site-title">link</h1></div></header><main class="layout" id="content-inner"><div id="page"><div id="article-container"><div class="flink"><h2 id="友情鏈接"><a href="#友情鏈接" class="headerlink" title="友情鏈接"></a>友情鏈接</h2><div class="flink-desc">那些人,那些事</div> <div class="flink-list">
<div class="flink-list-item">
<a href="https://hexo.io/zh-tw/" title="Hexo" target="_blank">
<div class="flink-item-icon">
@ -189,14 +189,14 @@
<div class="flink-item-name">Twitter</div>
<div class="flink-item-desc" title="社交分享平台">社交分享平台</div>
</a>
</div></div></div></div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">shenjianZ</div><div class="author-info__description">一份快捷简便的文档,便于查阅编程的细节</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">15</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">6</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/shenjianz"><i class="fab fa-github"></i><span>Follow Me</span></a><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/shenjianZ" target="_blank" title="Github"><i class="fab fa-github" style="color: #24292e;"></i></a><a class="social-icon" href="mailto:15202078626@163.com" target="_blank" title="Email"><i class="fas fa-envelope" style="color: #4a7dbe;"></i></a></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">一个简单快捷的文档知识点查阅网站</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/52662.html" title="线性回归">线性回归</a><time datetime="2025-01-19T08:46:51.000Z" title="发表于 2025-01-19 16:46:51">2025-01-19</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/12462.html" title="C lang">C lang</a><time datetime="2025-01-15T12:41:26.000Z" title="发表于 2025-01-15 20:41:26">2025-01-15</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/29139.html" title="k近邻算法K-Nearest NeighborsKNN">k近邻算法K-Nearest NeighborsKNN</a><time datetime="2025-01-13T09:20:59.000Z" title="发表于 2025-01-13 17:20:59">2025-01-13</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61251.html" title="Hadoop集群Zookeeper配置">Hadoop集群Zookeeper配置</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61253.html" title="Hadoop集群搭建基础环境">Hadoop集群搭建基础环境</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
</div></div></div></div></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src="/img/avatar.jpg" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">shenjianZ</div><div class="author-info__description">一份快捷简便的文档,便于查阅编程的细节</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">16</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">7</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">1</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/shenjianz"><i class="fab fa-github"></i><span>Follow Me</span></a><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/shenjianZ" target="_blank" title="Github"><i class="fab fa-github" style="color: #24292e;"></i></a><a class="social-icon" href="mailto:15202078626@163.com" target="_blank" title="Email"><i class="fas fa-envelope" style="color: #4a7dbe;"></i></a></div></div><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>公告</span></div><div class="announcement_content">一个简单快捷的文档知识点查阅网站</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/60504.html" title="逻辑回归">逻辑回归</a><time datetime="2025-01-20T07:30:08.000Z" title="发表于 2025-01-20 15:30:08">2025-01-20</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/52662.html" title="线性回归">线性回归</a><time datetime="2025-01-19T08:46:51.000Z" title="发表于 2025-01-19 16:46:51">2025-01-19</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/12462.html" title="C lang">C lang</a><time datetime="2025-01-15T12:41:26.000Z" title="发表于 2025-01-15 20:41:26">2025-01-15</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/29139.html" title="k近邻算法K-Nearest NeighborsKNN">k近邻算法K-Nearest NeighborsKNN</a><time datetime="2025-01-13T09:20:59.000Z" title="发表于 2025-01-13 17:20:59">2025-01-13</time></div></div><div class="aside-list-item no-cover"><div class="content"><a class="title" href="/posts/61253.html" title="Hadoop集群搭建基础环境">Hadoop集群搭建基础环境</a><time datetime="2024-09-11T14:45:40.000Z" title="发表于 2024-09-11 22:45:40">2024-09-11</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>分类</span>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/"><span class="card-category-list-name">古文观止</span><span class="card-category-list-count">1</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/uniapp/" style="font-size: 1.5em; color: #99a9bf">uniapp</a> <a href="/tags/machinelearning/" style="font-size: 1.1em; color: #999">machinelearning</a> <a href="/tags/C-C/" style="font-size: 1.1em; color: #999">C C++</a> <a href="/tags/linear-regression/" style="font-size: 1.1em; color: #999">linear-regression</a> <a href="/tags/%E7%BD%91%E7%BB%9C%E4%BB%A3%E7%90%86/" style="font-size: 1.1em; color: #999">网络代理</a> <a href="/tags/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/" style="font-size: 1.1em; color: #999">古文观止</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/01/"><span class="card-archive-list-date">一月 2025</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/09/"><span class="card-archive-list-date">九月 2024</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/08/"><span class="card-archive-list-date">八月 2024</span><span class="card-archive-list-count">8</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">15</div></div><div class="webinfo-item"><div class="item-name">已运行时间 :</div><div class="item-count" id="runtimeshow" data-publishDate="2024-07-30T16:00:00.000Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2025-01-19T09:10:22.191Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background: transparent"><div id="footer-wrap"><div class="copyright">&copy;2024 - 2025 By shenjianZ</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div><div class="footer_custom_text"><span>备案号豫ICP备2023019300号</span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js?v=4.13.0"></script><script src="/js/main.js?v=4.13.0"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0.33/dist/fancybox/fancybox.umd.min.js"></script><div class="js-pjax"></div><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1.1.3/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/%E7%BD%91%E7%BB%9C%E4%BB%A3%E7%90%86/" style="font-size: 1.1em; color: #999">网络代理</a> <a href="/tags/logistic-regression/" style="font-size: 1.1em; color: #999">logistic-regression</a> <a href="/tags/%E5%8F%A4%E6%96%87%E8%A7%82%E6%AD%A2/" style="font-size: 1.1em; color: #999">古文观止</a> <a href="/tags/linear-regression/" style="font-size: 1.1em; color: #999">linear-regression</a> <a href="/tags/machinelearning/" style="font-size: 1.1em; color: #999">machinelearning</a> <a href="/tags/C-C/" style="font-size: 1.1em; color: #999">C C++</a> <a href="/tags/uniapp/" style="font-size: 1.5em; color: #99a9bf">uniapp</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/01/"><span class="card-archive-list-date">一月 2025</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/09/"><span class="card-archive-list-date">九月 2024</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/08/"><span class="card-archive-list-date">八月 2024</span><span class="card-archive-list-count">8</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">16</div></div><div class="webinfo-item"><div class="item-name">已运行时间 :</div><div class="item-count" id="runtimeshow" data-publishDate="2024-07-30T16:00:00.000Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2025-01-20T08:05:36.213Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer" style="background: transparent"><div id="footer-wrap"><div class="copyright">&copy;2024 - 2025 By shenjianZ</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div><div class="footer_custom_text"><span>备案号豫ICP备2023019300号</span></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside-config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js?v=4.13.0"></script><script src="/js/main.js?v=4.13.0"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui@5.0.33/dist/fancybox/fancybox.umd.min.js"></script><div class="js-pjax"></div><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc@1.1.3/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
POWERMODE.shake = true;
POWERMODE.mobile = false;
document.body.addEventListener('input', POWERMODE);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

228
public/posts/60504.html Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -18,26 +18,6 @@
<p>More info: <a href="https://hexo.io/docs/one-command-deployment.html">Deployment</a></p>
]]></content>
</entry>
<entry>
<title>C lang</title>
<url>/posts/12462.html</url>
<content><![CDATA[<h3 id="c-lang在windows下的开发VS-code"><a href="#c-lang在windows下的开发VS-code" class="headerlink" title="c lang在windows下的开发VS code"></a>c lang在windows下的开发VS code</h3><p><a href="https://winlibs.com/#download-release">WinLibs - GCC+MinGW-w64 compiler for Windows</a>下载你需要的版本<br>解压到<code>D:\ProgramModule</code>,并将 <code>bin\</code>加入环境变量<code>PATH</code><br>打开新的<code>Terminal</code>输入<code>gcc -v</code>,查看<code>gcc</code>是否安装成功<br><code>VS code</code> 的插件管理下载<code>Code Runner</code><code>C\C++</code>这两个插件<br><code>*.c</code>源文件的内容区,右键点击<code>Run Code</code> ,即可运行成功<br><img src="/img/language/c-env-conf.png"></p>
<h3 id="数据类型"><a href="#数据类型" class="headerlink" title="数据类型"></a>数据类型</h3><ul>
<li>整数类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line">    <span class="type">short</span> a = <span class="number">12</span>;</span><br><span class="line">    <span class="type">int</span> b = <span class="number">100</span>;</span><br><span class="line">    <span class="type">long</span> c = <span class="number">1000L</span>;</span><br><span class="line">    <span class="type">long</span> <span class="type">long</span> d = <span class="number">1000000LL</span>;</span><br><span class="line">    <span class="type">unsigned</span> <span class="type">int</span> e = <span class="number">10</span>;</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;a: %hd\n&quot;</span>,a);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;b: %d\n&quot;</span>,b);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;c: %ld\n&quot;</span>,c);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;d: %lld\n&quot;</span>,d);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;e: %u\n&quot;</span>,e);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;f: %.3f\n&quot;</span>,f);</span><br></pre></td></tr></table></figure></li>
<li>小数类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">float</span> f = <span class="number">3.14F</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;f: %.3f\n&quot;</span>,f);</span><br><span class="line"><span class="type">double</span> g = <span class="number">5.65</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;g: %.2lf\n&quot;</span>,g);</span><br></pre></td></tr></table></figure></li>
<li>字符类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">char</span> h = <span class="string">&#x27;x&#x27;</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;x: %c\n&quot;</span>,x);</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="类型转换"><a href="#类型转换" class="headerlink" title="类型转换"></a>类型转换</h3><ul>
<li>隐式转换</li>
<li>强制转换<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">int</span> b = <span class="number">23</span>;</span><br><span class="line"><span class="type">short</span> c = (<span class="type">short</span>) b;</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="数组"><a href="#数组" class="headerlink" title="数组"></a>数组</h3><figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="meta">#<span class="keyword">include</span> <span class="string">&lt;stdio.h&gt;</span></span></span><br><span class="line"></span><br><span class="line"><span class="type">int</span> <span class="title function_">main</span><span class="params">()</span>&#123;</span><br><span class="line">    <span class="type">int</span> arr [<span class="number">10</span>] = &#123;<span class="number">2</span>,<span class="number">3</span>,<span class="number">4</span>,<span class="number">5</span>,<span class="number">6</span>,<span class="number">7</span>,<span class="number">8</span>,<span class="number">9</span>,<span class="number">10</span>,<span class="number">11</span>&#125;;</span><br><span class="line">    arr[<span class="number">0</span>] = <span class="number">1525</span>;</span><br><span class="line">    *(arr+<span class="number">1</span>) = <span class="number">25</span>;</span><br><span class="line">    <span class="type">int</span> len = <span class="keyword">sizeof</span>(arr)/<span class="keyword">sizeof</span>(arr[<span class="number">0</span>]);</span><br><span class="line">    <span class="type">void</span> <span class="title function_">printArr</span><span class="params">(<span class="type">int</span> arr[], <span class="type">int</span> len)</span>&#123;</span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> i = <span class="number">0</span>; i &lt; len;i++)&#123;</span><br><span class="line">            <span class="built_in">printf</span>(<span class="string">&quot;%d\t&quot;</span>,arr[i]);</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">    printArr(arr,len);</span><br><span class="line">    <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure>
<h3 id="指针"><a href="#指针" class="headerlink" title="指针"></a>指针</h3><figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="comment">// swap the value of a and b</span></span><br><span class="line">    <span class="type">void</span> <span class="title function_">swap</span><span class="params">(<span class="type">int</span>* x, <span class="type">int</span>* y)</span>&#123;</span><br><span class="line">        <span class="type">int</span> temp = *x;</span><br><span class="line">        *x = *y;</span><br><span class="line">        *y = temp;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line">    <span class="type">int</span> a = <span class="number">5</span>;</span><br><span class="line">    <span class="type">int</span> b = <span class="number">10</span>;</span><br><span class="line">    swap(&amp;a, &amp;b);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;a = %d b = %d\n&quot;</span>, a, b);</span><br></pre></td></tr></table></figure>
]]></content>
<tags>
<tag>C C++</tag>
</tags>
</entry>
<entry>
<title>page</title>
<url>/posts/1441.html</url>
@ -46,15 +26,6 @@
<li></li>
</ul>
]]></content>
</entry>
<entry>
<title>script</title>
<url>/posts/34849.html</url>
<content><![CDATA[<h3 id="查看CPU、内存使用率"><a href="#查看CPU、内存使用率" class="headerlink" title="查看CPU、内存使用率"></a>查看CPU、内存使用率</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 定义颜色</span></span><br><span class="line">RED=<span class="string">&#x27;\033[0;31m&#x27;</span></span><br><span class="line">GREEN=<span class="string">&#x27;\033[0;32m&#x27;</span></span><br><span class="line">YELLOW=<span class="string">&#x27;\033[0;33m&#x27;</span></span><br><span class="line">BLUE=<span class="string">&#x27;\033[0;34m&#x27;</span></span><br><span class="line">NC=<span class="string">&#x27;\033[0m&#x27;</span> <span class="comment"># 无颜色</span></span><br><span class="line"></span><br><span class="line"><span class="keyword">while</span> <span class="literal">true</span>; <span class="keyword">do</span></span><br><span class="line"> <span class="comment"># 获取所有进程的CPU使用率和内存使用率</span></span><br><span class="line"> cpu_usage=$(ps aux | awk <span class="string">&#x27;&#123;sum_cpu += $3&#125; END &#123;print sum_cpu&#125;&#x27;</span>)</span><br><span class="line"> mem_usage=$(ps aux | awk <span class="string">&#x27;&#123;sum_mem += $4&#125; END &#123;print sum_mem&#125;&#x27;</span>)</span><br><span class="line"> </span><br><span class="line"> <span class="comment"># 打印结果,带有时间戳、分隔线和颜色高亮</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;YELLOW&#125;</span>Timestamp: <span class="subst">$(date)</span><span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;GREEN&#125;</span>Total CPU usage: <span class="variable">$&#123;RED&#125;</span><span class="variable">$cpu_usage</span>%<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;GREEN&#125;</span>Total Memory usage: <span class="variable">$&#123;RED&#125;</span><span class="variable">$mem_usage</span>%<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> </span><br><span class="line"> <span class="comment"># 等待5秒后再次执行</span></span><br><span class="line"> <span class="built_in">sleep</span> 5</span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br></pre></td></tr></table></figure>
<p><strong>保存脚本到&#x2F;usr&#x2F;local&#x2F;bin目录下</strong></p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">mv</span> usage.sh /usr/local/bin/usage</span><br></pre></td></tr></table></figure>
<h3 id="Shell脚本编写的基本信息"><a href="#Shell脚本编写的基本信息" class="headerlink" title="Shell脚本编写的基本信息"></a>Shell脚本编写的基本信息</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="meta">#! /bin/bash</span></span><br><span class="line"><span class="comment"># -------------------------------------------------</span></span><br><span class="line"><span class="comment"># Filename: test.sh</span></span><br><span class="line"><span class="comment"># Version: 1.0</span></span><br><span class="line"><span class="comment"># Date: 2024/05/02</span></span><br><span class="line"><span class="comment"># Author: shenjianZ</span></span><br><span class="line"><span class="comment"># Email: shenjianZLT@gmail.com</span></span><br><span class="line"><span class="comment"># Website: https://blog.shenjianl.cn</span></span><br><span class="line"><span class="comment"># Description: this is a test shell</span></span><br><span class="line"><span class="comment"># CopyRight: 2024 All rights reserved shenjianZ</span></span><br><span class="line"><span class="comment"># License GPL</span></span><br><span class="line"><span class="comment"># ------------------------------------------------</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment"># Your script logic goes here</span></span><br></pre></td></tr></table></figure>]]></content>
</entry>
<entry>
<title>k近邻算法K-Nearest NeighborsKNN</title>
@ -118,6 +89,47 @@
<tag>machinelearning</tag>
</tags>
</entry>
<entry>
<title>逻辑回归</title>
<url>/posts/60504.html</url>
<content><![CDATA[<h3 id="logistic-regression-code"><a href="#logistic-regression-code" class="headerlink" title="logistic regression code"></a>logistic regression code</h3><figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">import</span> pandas <span class="keyword">as</span> pd</span><br><span class="line"><span class="keyword">import</span> numpy <span class="keyword">as</span> np</span><br><span class="line"><span class="keyword">from</span> sklearn.datasets <span class="keyword">import</span> load_breast_cancer</span><br><span class="line"><span class="keyword">from</span> sklearn.model_selection <span class="keyword">import</span> train_test_split</span><br><span class="line"><span class="keyword">from</span> sklearn.preprocessing <span class="keyword">import</span> StandardScaler</span><br><span class="line"><span class="keyword">from</span> sklearn.linear_model <span class="keyword">import</span> LogisticRegression</span><br><span class="line"><span class="comment"># 1. 加载乳腺癌数据集</span></span><br><span class="line">data = load_breast_cancer()</span><br><span class="line"><span class="comment"># 2.1 数据集基本处理</span></span><br><span class="line">df = pd.DataFrame(data.data, columns=data.feature_names)</span><br><span class="line">df[<span class="string">&#x27;target&#x27;</span>] = data.target</span><br><span class="line"><span class="keyword">for</span> i <span class="keyword">in</span> df.columns:</span><br><span class="line"> <span class="comment"># 检查列是否有缺失值</span></span><br><span class="line"> <span class="keyword">if</span> np.<span class="built_in">any</span>(pd.isnull(df[i])):</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">f&quot;Filling missing values in column: <span class="subst">&#123;i&#125;</span>&quot;</span>)</span><br><span class="line"><span class="comment">#2.2 确认特征值、目标值</span></span><br><span class="line">X = df.iloc[:,<span class="number">0</span>:df.shape[<span class="number">1</span>] - <span class="number">1</span>]</span><br><span class="line">y = df.loc[:,<span class="string">&quot;target&quot;</span>]</span><br><span class="line"><span class="comment"># 2.3 分割数据</span></span><br><span class="line">X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=<span class="number">0.3</span>)</span><br><span class="line"><span class="comment"># 显示前几行数据</span></span><br><span class="line">df.head(<span class="number">1</span>)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 3. 特征工程 标准化</span></span><br><span class="line">transfer = StandardScaler()</span><br><span class="line">X_train = transfer.fit_transform(X_train)</span><br><span class="line">X_test = transfer.transform(X_test)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 4 机器学习 逻辑回归</span></span><br><span class="line">estimator = LogisticRegression()</span><br><span class="line">estimator.fit(X_train,y_train)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 5. 模型评估</span></span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;模型准确率:<span class="subst">&#123;estimator.score(X_test,y_test)&#125;</span>&quot;</span>)</span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;模型预测值为:\n<span class="subst">&#123;estimator.predict(X_test)&#125;</span>&quot;</span>)</span><br></pre></td></tr></table></figure>
<h3 id="分类评估的参数"><a href="#分类评估的参数" class="headerlink" title="分类评估的参数"></a>分类评估的参数</h3><ul>
<li><p>准确率<br>准确率是所有预测正确的样本占总样本的比例<br>$$Accuracy &#x3D; \frac{TP+TN}{TP+FN+FP+TN}$$</p>
</li>
<li><p>精准率<br>精准率(又称查准率)是指所有被预测为正类的样本中,真正为正类的比例<br>$$Precision &#x3D; \frac{TP}{TP+FP}$$</p>
</li>
<li><p>召回率<br>召回率(又称查全率)是指所有实际为正类的样本中,被正确预测为正类的比例<br>$$Recall &#x3D; \frac{TP}{TP+FN}$$</p>
</li>
<li><p>F1-score<br>F1 值F1 Score是精准率和召回率的调和平均数综合考虑了精准率和召回率的影响。<br>$$ F1 &#x3D; 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} $$</p>
</li>
<li><p>roc曲线<br>tpr、fpr来衡量不平衡的二分类问题</p>
</li>
</ul>
<figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">import</span> pandas <span class="keyword">as</span> pd</span><br><span class="line"><span class="keyword">import</span> numpy <span class="keyword">as</span> np</span><br><span class="line"><span class="keyword">from</span> sklearn.datasets <span class="keyword">import</span> load_breast_cancer</span><br><span class="line"><span class="keyword">from</span> sklearn.model_selection <span class="keyword">import</span> train_test_split</span><br><span class="line"><span class="keyword">from</span> sklearn.preprocessing <span class="keyword">import</span> StandardScaler</span><br><span class="line"><span class="keyword">from</span> sklearn.linear_model <span class="keyword">import</span> LogisticRegression</span><br><span class="line"><span class="keyword">from</span> sklearn.metrics <span class="keyword">import</span> classification_report, roc_auc_score</span><br><span class="line"><span class="comment"># 1. 加载乳腺癌数据集</span></span><br><span class="line">data = load_breast_cancer()</span><br><span class="line"><span class="comment"># 2.1 数据集基本处理</span></span><br><span class="line">df = pd.DataFrame(data.data, columns=data.feature_names)</span><br><span class="line">df[<span class="string">&#x27;target&#x27;</span>] = data.target</span><br><span class="line"><span class="keyword">for</span> i <span class="keyword">in</span> df.columns:</span><br><span class="line"> <span class="comment"># 检查列是否有缺失值</span></span><br><span class="line"> <span class="keyword">if</span> np.<span class="built_in">any</span>(pd.isnull(df[i])):</span><br><span class="line"> <span class="built_in">print</span>(<span class="string">f&quot;Filling missing values in column: <span class="subst">&#123;i&#125;</span>&quot;</span>)</span><br><span class="line"><span class="comment"># 2.2 确认特征值、目标值</span></span><br><span class="line">X = df.iloc[:, <span class="number">0</span>:df.shape[<span class="number">1</span>] - <span class="number">1</span>]</span><br><span class="line">y = df.loc[:, <span class="string">&quot;target&quot;</span>]</span><br><span class="line"><span class="comment"># 2.3 分割数据</span></span><br><span class="line">X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=<span class="number">0.3</span>)</span><br><span class="line"><span class="comment"># 显示前几行数据</span></span><br><span class="line">df.head(<span class="number">1</span>)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 3. 特征工程 标准化</span></span><br><span class="line">transfer = StandardScaler()</span><br><span class="line">X_train = transfer.fit_transform(X_train)</span><br><span class="line">X_test = transfer.transform(X_test)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 4 机器学习 逻辑回归</span></span><br><span class="line">estimator = LogisticRegression()</span><br><span class="line">estimator.fit(X_train, y_train)</span><br><span class="line"></span><br><span class="line"><span class="comment"># 5. 模型评估</span></span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;模型准确率:<span class="subst">&#123;estimator.score(X_test, y_test)&#125;</span>&quot;</span>)</span><br><span class="line">y_pred = estimator.predict(X_test)</span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;模型预测值为:\n<span class="subst">&#123;y_pred&#125;</span>&quot;</span>)</span><br><span class="line"><span class="comment"># 5.1 精确率、召回率</span></span><br><span class="line">ret = classification_report(y_test, y_pred, labels=[<span class="number">1</span>, <span class="number">0</span>], target_names=[<span class="string">&quot;良性&quot;</span>, <span class="string">&quot;恶性&quot;</span>])</span><br><span class="line">roc_score = roc_auc_score(y_test, y_pred)</span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;准确率、召回率:<span class="subst">&#123;ret&#125;</span>&quot;</span>)</span><br><span class="line"><span class="built_in">print</span>(<span class="string">f&quot;roc_score:<span class="subst">&#123;roc_score&#125;</span>&quot;</span>)</span><br></pre></td></tr></table></figure>
<h3 id="类别不平衡的处理"><a href="#类别不平衡的处理" class="headerlink" title="类别不平衡的处理"></a>类别不平衡的处理</h3><p>先准备类别不平衡的数据</p>
<figure class="highlight python"><table><tr><td class="code"><pre><span class="line"><span class="keyword">from</span> imblearn.over_sampling <span class="keyword">import</span> RandomOverSampler,SMOTE</span><br><span class="line"><span class="keyword">from</span> imblearn.under_sampling <span class="keyword">import</span> RandomUnderSampler</span><br><span class="line"><span class="keyword">from</span> sklearn.datasets <span class="keyword">import</span> make_classification</span><br><span class="line"><span class="keyword">import</span> matplotlib.pyplot <span class="keyword">as</span> plt</span><br><span class="line"><span class="keyword">from</span> collections <span class="keyword">import</span> Counter</span><br><span class="line"></span><br><span class="line"><span class="comment"># 1.准备类别不平衡的数据</span></span><br><span class="line">X, y = make_classification(</span><br><span class="line"> n_samples=<span class="number">5000</span>,</span><br><span class="line"> n_features=<span class="number">2</span>,</span><br><span class="line"> n_informative=<span class="number">2</span>,</span><br><span class="line"> n_redundant=<span class="number">0</span>,</span><br><span class="line"> n_repeated=<span class="number">0</span>,</span><br><span class="line"> n_classes=<span class="number">3</span>,</span><br><span class="line"> n_clusters_per_class=<span class="number">1</span>,</span><br><span class="line"> weights=[<span class="number">0.01</span>, <span class="number">0.05</span>, <span class="number">0.94</span>],</span><br><span class="line"> random_state=<span class="number">0</span>,</span><br><span class="line">)</span><br><span class="line">counter = Counter(y)</span><br><span class="line">plt.scatter(X[:,<span class="number">0</span>],X[:,<span class="number">1</span>],c=y)</span><br><span class="line">plt.show()</span><br></pre></td></tr></table></figure>
<ul>
<li>过采样<br>增加训练集的少数的类别的样本,使得正反例样本数据接近 <ul>
<li>随机过采样RandomOverSampler)<figure class="highlight python"><table><tr><td class="code"><pre><span class="line">ros = RandomOverSampler()</span><br><span class="line">X_resampled,y_resampled = ros.fit_resample(X,y)</span><br><span class="line"><span class="built_in">print</span>(Counter(y_resampled))</span><br><span class="line">plt.scatter(X_resampled[:,<span class="number">0</span>],X_resampled[:,<span class="number">1</span>],c=y_resampled)</span><br><span class="line">plt.show()</span><br></pre></td></tr></table></figure>
<img src="/img/machinelearning/over_random_sampling.png"></li>
<li><code>SMOTE</code>过采样SMOTE<figure class="highlight python"><table><tr><td class="code"><pre><span class="line">smote = SMOTE()</span><br><span class="line">X_resampled,y_resampled = smote.fit_resample(X,y)</span><br><span class="line"><span class="built_in">print</span>(Counter(y_resampled))</span><br><span class="line">plt.scatter(X_resampled[:,<span class="number">0</span>],X_resampled[:,<span class="number">1</span>],c=y_resampled)</span><br><span class="line">plt.show()</span><br></pre></td></tr></table></figure>
<img src="/img/machinelearning/over_smote_sampling.png"></li>
</ul>
</li>
<li>欠采样<br>减少训练集的多数的类别的样本,使得正反例样本数据接近<ul>
<li>随机欠采样RandomUnderSampler<figure class="highlight python"><table><tr><td class="code"><pre><span class="line">rus = RandomUnderSampler(random_state=<span class="number">0</span>)</span><br><span class="line">X_resampled,y_resampled = rus.fit_resample(X,y)</span><br><span class="line"><span class="built_in">print</span>(Counter(y_resampled))</span><br><span class="line">plt.scatter(X_resampled[:,<span class="number">0</span>],X_resampled[:,<span class="number">1</span>],c=y_resampled)</span><br><span class="line">plt.show()</span><br></pre></td></tr></table></figure>
<img src="/img/machinelearning/under_sampling.png"></li>
</ul>
</li>
</ul>
]]></content>
<tags>
<tag>logistic-regression</tag>
</tags>
</entry>
<entry>
<title>线性回归</title>
<url>/posts/52662.html</url>
@ -153,11 +165,40 @@
<tag>linear-regression</tag>
</tags>
</entry>
<entry>
<title>script</title>
<url>/posts/34849.html</url>
<content><![CDATA[<h3 id="查看CPU、内存使用率"><a href="#查看CPU、内存使用率" class="headerlink" title="查看CPU、内存使用率"></a>查看CPU、内存使用率</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># 定义颜色</span></span><br><span class="line">RED=<span class="string">&#x27;\033[0;31m&#x27;</span></span><br><span class="line">GREEN=<span class="string">&#x27;\033[0;32m&#x27;</span></span><br><span class="line">YELLOW=<span class="string">&#x27;\033[0;33m&#x27;</span></span><br><span class="line">BLUE=<span class="string">&#x27;\033[0;34m&#x27;</span></span><br><span class="line">NC=<span class="string">&#x27;\033[0m&#x27;</span> <span class="comment"># 无颜色</span></span><br><span class="line"></span><br><span class="line"><span class="keyword">while</span> <span class="literal">true</span>; <span class="keyword">do</span></span><br><span class="line"> <span class="comment"># 获取所有进程的CPU使用率和内存使用率</span></span><br><span class="line"> cpu_usage=$(ps aux | awk <span class="string">&#x27;&#123;sum_cpu += $3&#125; END &#123;print sum_cpu&#125;&#x27;</span>)</span><br><span class="line"> mem_usage=$(ps aux | awk <span class="string">&#x27;&#123;sum_mem += $4&#125; END &#123;print sum_mem&#125;&#x27;</span>)</span><br><span class="line"> </span><br><span class="line"> <span class="comment"># 打印结果,带有时间戳、分隔线和颜色高亮</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;YELLOW&#125;</span>Timestamp: <span class="subst">$(date)</span><span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;GREEN&#125;</span>Total CPU usage: <span class="variable">$&#123;RED&#125;</span><span class="variable">$cpu_usage</span>%<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;GREEN&#125;</span>Total Memory usage: <span class="variable">$&#123;RED&#125;</span><span class="variable">$mem_usage</span>%<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> <span class="built_in">echo</span> -e <span class="string">&quot;<span class="variable">$&#123;BLUE&#125;</span>==============================<span class="variable">$&#123;NC&#125;</span>&quot;</span></span><br><span class="line"> </span><br><span class="line"> <span class="comment"># 等待5秒后再次执行</span></span><br><span class="line"> <span class="built_in">sleep</span> 5</span><br><span class="line"><span class="keyword">done</span></span><br><span class="line"></span><br></pre></td></tr></table></figure>
<p><strong>保存脚本到&#x2F;usr&#x2F;local&#x2F;bin目录下</strong></p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">mv</span> usage.sh /usr/local/bin/usage</span><br></pre></td></tr></table></figure>
<h3 id="Shell脚本编写的基本信息"><a href="#Shell脚本编写的基本信息" class="headerlink" title="Shell脚本编写的基本信息"></a>Shell脚本编写的基本信息</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="meta">#! /bin/bash</span></span><br><span class="line"><span class="comment"># -------------------------------------------------</span></span><br><span class="line"><span class="comment"># Filename: test.sh</span></span><br><span class="line"><span class="comment"># Version: 1.0</span></span><br><span class="line"><span class="comment"># Date: 2024/05/02</span></span><br><span class="line"><span class="comment"># Author: shenjianZ</span></span><br><span class="line"><span class="comment"># Email: shenjianZLT@gmail.com</span></span><br><span class="line"><span class="comment"># Website: https://blog.shenjianl.cn</span></span><br><span class="line"><span class="comment"># Description: this is a test shell</span></span><br><span class="line"><span class="comment"># CopyRight: 2024 All rights reserved shenjianZ</span></span><br><span class="line"><span class="comment"># License GPL</span></span><br><span class="line"><span class="comment"># ------------------------------------------------</span></span><br><span class="line"></span><br><span class="line"></span><br><span class="line"><span class="comment"># Your script logic goes here</span></span><br></pre></td></tr></table></figure>]]></content>
</entry>
<entry>
<title>网络相关</title>
<url>/posts/41168.html</url>
<content><![CDATA[]]></content>
</entry>
<entry>
<title>C lang</title>
<url>/posts/12462.html</url>
<content><![CDATA[<h3 id="c-lang在windows下的开发VS-code"><a href="#c-lang在windows下的开发VS-code" class="headerlink" title="c lang在windows下的开发VS code"></a>c lang在windows下的开发VS code</h3><p><a href="https://winlibs.com/#download-release">WinLibs - GCC+MinGW-w64 compiler for Windows</a>下载你需要的版本<br>解压到<code>D:\ProgramModule</code>,并将 <code>bin\</code>加入环境变量<code>PATH</code><br>打开新的<code>Terminal</code>输入<code>gcc -v</code>,查看<code>gcc</code>是否安装成功<br><code>VS code</code> 的插件管理下载<code>Code Runner</code><code>C\C++</code>这两个插件<br><code>*.c</code>源文件的内容区,右键点击<code>Run Code</code> ,即可运行成功<br><img src="/img/language/c-env-conf.png"></p>
<h3 id="数据类型"><a href="#数据类型" class="headerlink" title="数据类型"></a>数据类型</h3><ul>
<li>整数类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line">    <span class="type">short</span> a = <span class="number">12</span>;</span><br><span class="line">    <span class="type">int</span> b = <span class="number">100</span>;</span><br><span class="line">    <span class="type">long</span> c = <span class="number">1000L</span>;</span><br><span class="line">    <span class="type">long</span> <span class="type">long</span> d = <span class="number">1000000LL</span>;</span><br><span class="line">    <span class="type">unsigned</span> <span class="type">int</span> e = <span class="number">10</span>;</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;a: %hd\n&quot;</span>,a);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;b: %d\n&quot;</span>,b);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;c: %ld\n&quot;</span>,c);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;d: %lld\n&quot;</span>,d);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;e: %u\n&quot;</span>,e);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;f: %.3f\n&quot;</span>,f);</span><br></pre></td></tr></table></figure></li>
<li>小数类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">float</span> f = <span class="number">3.14F</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;f: %.3f\n&quot;</span>,f);</span><br><span class="line"><span class="type">double</span> g = <span class="number">5.65</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;g: %.2lf\n&quot;</span>,g);</span><br></pre></td></tr></table></figure></li>
<li>字符类型<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">char</span> h = <span class="string">&#x27;x&#x27;</span>;</span><br><span class="line"><span class="built_in">printf</span>(<span class="string">&quot;x: %c\n&quot;</span>,x);</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="类型转换"><a href="#类型转换" class="headerlink" title="类型转换"></a>类型转换</h3><ul>
<li>隐式转换</li>
<li>强制转换<figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="type">int</span> b = <span class="number">23</span>;</span><br><span class="line"><span class="type">short</span> c = (<span class="type">short</span>) b;</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="数组"><a href="#数组" class="headerlink" title="数组"></a>数组</h3><figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="meta">#<span class="keyword">include</span> <span class="string">&lt;stdio.h&gt;</span></span></span><br><span class="line"></span><br><span class="line"><span class="type">int</span> <span class="title function_">main</span><span class="params">()</span>&#123;</span><br><span class="line">    <span class="type">int</span> arr [<span class="number">10</span>] = &#123;<span class="number">2</span>,<span class="number">3</span>,<span class="number">4</span>,<span class="number">5</span>,<span class="number">6</span>,<span class="number">7</span>,<span class="number">8</span>,<span class="number">9</span>,<span class="number">10</span>,<span class="number">11</span>&#125;;</span><br><span class="line">    arr[<span class="number">0</span>] = <span class="number">1525</span>;</span><br><span class="line">    *(arr+<span class="number">1</span>) = <span class="number">25</span>;</span><br><span class="line">    <span class="type">int</span> len = <span class="keyword">sizeof</span>(arr)/<span class="keyword">sizeof</span>(arr[<span class="number">0</span>]);</span><br><span class="line">    <span class="type">void</span> <span class="title function_">printArr</span><span class="params">(<span class="type">int</span> arr[], <span class="type">int</span> len)</span>&#123;</span><br><span class="line">        <span class="keyword">for</span> (<span class="type">int</span> i = <span class="number">0</span>; i &lt; len;i++)&#123;</span><br><span class="line">            <span class="built_in">printf</span>(<span class="string">&quot;%d\t&quot;</span>,arr[i]);</span><br><span class="line">        &#125;</span><br><span class="line">    &#125;</span><br><span class="line">    printArr(arr,len);</span><br><span class="line">    <span class="keyword">return</span> <span class="number">0</span>;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure>
<h3 id="指针"><a href="#指针" class="headerlink" title="指针"></a>指针</h3><figure class="highlight c"><table><tr><td class="code"><pre><span class="line"><span class="comment">// swap the value of a and b</span></span><br><span class="line">    <span class="type">void</span> <span class="title function_">swap</span><span class="params">(<span class="type">int</span>* x, <span class="type">int</span>* y)</span>&#123;</span><br><span class="line">        <span class="type">int</span> temp = *x;</span><br><span class="line">        *x = *y;</span><br><span class="line">        *y = temp;</span><br><span class="line"></span><br><span class="line">    &#125;</span><br><span class="line">    <span class="type">int</span> a = <span class="number">5</span>;</span><br><span class="line">    <span class="type">int</span> b = <span class="number">10</span>;</span><br><span class="line">    swap(&amp;a, &amp;b);</span><br><span class="line">    <span class="built_in">printf</span>(<span class="string">&quot;a = %d b = %d\n&quot;</span>, a, b);</span><br></pre></td></tr></table></figure>
]]></content>
<tags>
<tag>C C++</tag>
</tags>
</entry>
<entry>
<title>郑伯克段于鄢</title>
<url>/posts/58638.html</url>
@ -172,44 +213,78 @@
</tags>
</entry>
<entry>
<title>Hadoop集群Zookeeper配置</title>
<url>/posts/61251.html</url>
<content><![CDATA[<h3 id="Zookeeper脚本配置"><a href="#Zookeeper脚本配置" class="headerlink" title="Zookeeper脚本配置"></a>Zookeeper脚本配置</h3><ul>
<li>拷贝ips<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cp</span> ips ips_zookeeper</span><br></pre></td></tr></table></figure>
修改为<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">nn1</span><br><span class="line">nn2</span><br><span class="line">nn3</span><br></pre></td></tr></table></figure></li>
<li>拷贝三个脚本<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cp</span> scp_all.sh scp_all_zookeeper.sh </span><br><span class="line"><span class="built_in">cp</span> ssh_all.sh ssh_all_zookeeper.sh </span><br><span class="line"><span class="built_in">cp</span> ssh_root.sh ssh_root_zookeeper.sh</span><br></pre></td></tr></table></figure></li>
<li>修改脚本<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">vim scp_all_zookeeper.sh </span><br><span class="line">vim ssh_all_zookeeper.sh </span><br><span class="line">vim ssh_root_zookeeper.sh </span><br></pre></td></tr></table></figure>
<title>组件使用</title>
<url>/posts/33957.html</url>
<content><![CDATA[<h3 id="组件自动导入"><a href="#组件自动导入" class="headerlink" title="组件自动导入"></a>组件自动导入</h3><figure class="highlight json"><table><tr><td class="code"><pre><span class="line"><span class="attr">&quot;easycom&quot;</span><span class="punctuation">:</span><span class="punctuation">&#123;</span></span><br><span class="line"> <span class="attr">&quot;autoscan&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">true</span></span><span class="punctuation">,</span></span><br><span class="line"> <span class="attr">&quot;custom&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line"> <span class="attr">&quot;^tui-(.*)&quot;</span><span class="punctuation">:</span> <span class="string">&quot;@/components/thorui/tui-$1/tui-$1.vue&quot;</span> <span class="comment">// 匹配components目录内的vue文件</span></span><br><span class="line"> <span class="punctuation">&#125;</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure>
将三个脚本中的ips改为ips_zookeeper</li>
<h3 id="tui-sticky-吸顶容器"><a href="#tui-sticky-吸顶容器" class="headerlink" title="tui-sticky 吸顶容器"></a><code>tui-sticky 吸顶容器</code></h3><blockquote>
<p>包含 以下 <code>tui</code> 组件 :</p>
<ul>
<li>tui-sticky</li>
<li>tui-list-view</li>
<li>tui-list-cell</li>
</ul>
<h3 id="Zookeeper安装"><a href="#Zookeeper安装" class="headerlink" title="Zookeeper安装"></a>Zookeeper安装</h3><ul>
<li>上传到<code>/tmp</code>目录下,解压 <figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">sudo</span> tar -zxvf /tmp/zookeeper-3.4.8.tar.gz -C /usr/local/</span><br><span class="line">scp -r /usr/local/zookeeper-3.4.8/ root@nn2:/usr/local/</span><br><span class="line">scp -r /usr/local/zookeeper-3.4.8/ root@nn3:/usr/local/</span><br><span class="line">ssh_root_zookeeper.sh <span class="built_in">chown</span> -R hadoop:hadoop /usr/local/zookeeper-3.4.8</span><br><span class="line">ssh_root_zookeeper.s <span class="built_in">ln</span> -s /usr/local/zookeeper-3.4.8/ /usr/local/zookeeper</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="Zookeeper配置"><a href="#Zookeeper配置" class="headerlink" title="Zookeeper配置"></a>Zookeeper配置</h3><ul>
<li><p>zoo.cfg配置</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cd</span> /usr/local/zookeeper/conf/</span><br><span class="line"><span class="built_in">cp</span> zoo_sample.cfg zoo.cfg</span><br></pre></td></tr></table></figure>
<p>然后<code>vim zoo.cfg</code>,修改如下:</p>
<figure class="highlight properties"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 修改dataDir</span></span><br><span class="line"><span class="attr">dataDir</span>=<span class="string">/data/zookeeper</span></span><br><span class="line"><span class="comment"># 添加一下内容</span></span><br><span class="line"><span class="attr">server.1</span>=<span class="string">nn1:2888:3888 </span></span><br><span class="line"><span class="attr">server.2</span>=<span class="string">nn2:2888:3888 </span></span><br><span class="line"><span class="attr">server.3</span>=<span class="string">nn3:2888:3888</span></span><br></pre></td></tr></table></figure>
<p>分发给nn2、nn3<br> <code>scp_all_zookeeper.sh /usr/local/zookeeper/conf/zoo.cfg /usr/local/zookeeper/conf/</code></p>
</li>
<li><p><code>zkEnv.sh</code>配置<br><code>vim /usr/local/zookeeper/bin/zkEnv.sh</code><br><img src="/../../../img/000001.png" alt="000001.png"><br>分发到nn2、nn3</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">scp_all_zookeeper.sh /usr/local/zookeeper/bin/zkEnv.sh /usr/local/zookeeper/bin/</span><br></pre></td></tr></table></figure></li>
<li><p>创建zookeeper数据目录</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">ssh_root_zookeeper.sh <span class="built_in">mkdir</span> -p /data/zookeeper</span><br><span class="line">ssh_root_zookeeper.sh <span class="built_in">chown</span> -R hadoop:hadoop /data</span><br></pre></td></tr></table></figure></li>
<li><p>创建myid文件</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">ssh nn1 <span class="string">&#x27;echo &quot;1&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br><span class="line">ssh nn2 <span class="string">&#x27;echo &quot;2&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br><span class="line">ssh nn3 <span class="string">&#x27;echo &quot;3&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br></pre></td></tr></table></figure></li>
<li><p>配置Zookeeper环境变量</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 在其他所有主机也执行</span></span><br><span class="line"><span class="built_in">sudo</span> <span class="built_in">chown</span> -R hadoop:hadoop /etc/profile.d/myEnv.sh</span><br></pre></td></tr></table></figure>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">echo</span> <span class="string">&#x27;export ZOOKEEPER_HOME=/usr/local/zookeeper&#x27;</span> &gt;&gt; /etc/profile.d/myEnv.sh</span><br><span class="line"><span class="built_in">echo</span> <span class="string">&#x27;export PATH=$PATH:$ZOOKEEPER_HOME/bin&#x27;</span> &gt;&gt; /etc/profile.d/myEnv.sh</span><br></pre></td></tr></table></figure>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 分发到nn2、nn3</span></span><br><span class="line">scp_all_zookeeper.sh /etc/profile.d/myEnv.sh /etc/profile.d/</span><br><span class="line"><span class="comment"># source 环境变量</span></span><br><span class="line">ssh_all_zookeeper.sh <span class="built_in">source</span> /etc/profile</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="Zookeeper的命令"><a href="#Zookeeper的命令" class="headerlink" title="Zookeeper的命令"></a>Zookeeper的命令</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment">#启动zk服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh start</span><br><span class="line"><span class="comment">#查看每个机器ZK运行的状态</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh status</span><br><span class="line"><span class="comment">#整体停止服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh stop </span><br><span class="line"><span class="comment">#重启zk服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh restart</span><br></pre></td></tr></table></figure>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line"><span class="meta prompt_">#</span><span class="language-bash">启动zookeeper客户端并连接zookeeper集群</span></span><br><span class="line">/usr/local/zookeeper/bin/zkCli.sh -server nn1:2181</span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">可以简化为:</span></span><br><span class="line">zkCli.sh</span><br></pre></td></tr></table></figure>
</blockquote>
<figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">tui-sticky</span> <span class="attr">:scrollTop</span>=<span class="string">&quot;scrollTop&quot;</span> <span class="attr">stickyHeight</span>=<span class="string">&quot;104rpx&quot;</span> <span class="attr">container</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!-- header start --&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">template</span> <span class="attr">v-slot:header</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">view</span> <span class="attr">class</span>=<span class="string">&quot;sticky-item&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">view</span> <span class="attr">class</span>=<span class="string">&quot;setting&quot;</span>&gt;</span>设置<span class="tag">&lt;/<span class="name">view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">template</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!-- header end --&gt;</span></span><br><span class="line"> <span class="comment">&lt;!--内容 start--&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">template</span> <span class="attr">v-slot:content</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">tui-list-view</span> <span class="attr">class</span>=<span class="string">&quot;content&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">tui-list-cell</span> <span class="attr">:arrow</span>=<span class="string">&quot;false&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">switch</span> <span class="attr">class</span>=<span class="string">&#x27;switch&#x27;</span> <span class="attr">checked</span> <span class="attr">color</span>=<span class="string">&quot;#FFCC33&quot;</span> /&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">tui-list-cell</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">tui-list-view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">template</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!--内容 end--&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">tui-sticky</span>&gt;</span></span><br><span class="line"></span><br><span class="line"><span class="tag">&lt;<span class="name">script</span> <span class="attr">setup</span>&gt;</span><span class="language-javascript"></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">import</span> &#123; ref &#125; <span class="keyword">from</span> <span class="string">&#x27;vue&#x27;</span></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">import</span> &#123; onPageScroll &#125; <span class="keyword">from</span> <span class="string">&#x27;@dcloudio/uni-app&#x27;</span></span></span><br><span class="line"><span class="language-javascript"></span></span><br><span class="line"><span class="language-javascript"> <span class="comment">// 定义 scrollTop 响应式变量</span></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">const</span> scrollTop = <span class="title function_">ref</span>(<span class="number">0</span>)</span></span><br><span class="line"><span class="language-javascript"> <span class="comment">// 监听页面滚动事件</span></span></span><br><span class="line"><span class="language-javascript"> <span class="title function_">onPageScroll</span>(<span class="function">(<span class="params">e</span>) =&gt;</span> &#123;</span></span><br><span class="line"><span class="language-javascript"> scrollTop.<span class="property">value</span> = e.<span class="property">scrollTop</span></span></span><br><span class="line"><span class="language-javascript"> &#125;)</span></span><br><span class="line"><span class="language-javascript"></span><span class="tag">&lt;/<span class="name">script</span>&gt;</span></span><br></pre></td></tr></table></figure>
]]></content>
<tags>
<tag>uniapp</tag>
</tags>
</entry>
<entry>
<title>Docker被墙如何继续使用</title>
<url>/posts/47807.html</url>
<content><![CDATA[<h2 id="Docker-Download"><a href="#Docker-Download" class="headerlink" title="Docker Download"></a>Docker Download</h2><blockquote>
<p>自从docker官方仓库在中国大陆被墙后docker的部署方式也发生了改变。<br>解决docker安装问题<a href="https://github.com/shenjianZ/docker_installer">https://github.com/shenjianZ/docker_installer</a></p>
</blockquote>
<ol>
<li><p>安装docker </p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun</span><br></pre></td></tr></table></figure>
</li>
<li><p>启动docker</p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo systemctl start docker</span><br></pre></td></tr></table></figure>
</li>
<li><p>设置开机自启</p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo systemctl enable docker</span><br></pre></td></tr></table></figure>
</li>
<li><p>Docker pull images</p>
<blockquote>
<p>将image下载到阿里云镜像仓库中<br>解决docker pull 镜像问题:<a href="https://github.com/shenjianZ/docker_image_pusher">https://github.com/shenjianZ/docker_image_pusher</a></p>
</blockquote>
<ol>
<li><p><strong>登录阿里云镜像服务</strong> <a href="https://cr.console.aliyun.com/">https://cr.console.aliyun.com/</a>,</p>
<p>启用个人实例,创建一个命名空间(<code>ALIYUN_NAME_SPACE</code></p>
</li>
<li><p><strong>访问凭证</strong> 可以看到账号 用户名(<code>ALIYUN_REGISTRY_USER</code>)</p>
<p>密码(<code>ALIYUN_REGISTRY_PASSWORD</code>)</p>
<p>仓库地址(<code>ALIYUN_REGISTRY</code></p>
</li>
<li><p><strong>启动Action</strong><br>进入您自己的项目,点击<code>Action</code>,启用<code>Github Action</code>功能</p>
</li>
<li><p><strong>配置环境变量</strong><br>进入Settings-&gt;Secret and variables-&gt;Actions-&gt;New Repository secret<br> 将上一步的四个值<br> <code>ALIYUN_NAME_SPACE</code>,</p>
<p> <code> ALIYUN_REGISTRY_USER</code></p>
<p> <code>ALIYUN_REGISTRY_PASSWORD</code></p>
<p> <code>ALIYUN_REGISTRY</code><br> 配置成环境变量</p>
</li>
<li><p><strong>添加镜像</strong><br> 打开<code>images.txt</code>文件,添加你想要的镜像 可以加tag</p>
</li>
<li><p>使用镜像<br>回到阿里云,镜像仓库,点击任意镜像,可查看镜像状态。(可以改成公开,拉取镜像免登录)</p>
</li>
</ol>
</li>
</ol>
]]></content>
</entry>
<entry>
<title>uniapp 开发</title>
<url>/posts/58817.html</url>
<content><![CDATA[<ul>
<li><a href="../component1">uniapp component</a></li>
</ul>
]]></content>
<tags>
<tag>uniapp</tag>
</tags>
</entry>
<entry>
<title>Hadoop集群搭建基础环境</title>
@ -269,6 +344,46 @@
<li><p><code>/home/hadoop/bin</code>添加到hadoop用户的环境变量需要切换到<code>hadoop</code>用户</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">echo</span> <span class="string">&#x27;export PATH=$PATH:/home/hadoop/bin&#x27;</span> &gt;&gt; ~/.bashrc &amp;&amp; <span class="built_in">source</span> ~/.bashrc</span><br><span class="line">scp_all.sh /home/hadoop/.bashrc /home/hadoop/</span><br><span class="line">ssh_all.sh <span class="built_in">source</span> ~/.bashrc </span><br></pre></td></tr></table></figure></li>
</ul>
]]></content>
</entry>
<entry>
<title>Hadoop集群Zookeeper配置</title>
<url>/posts/61251.html</url>
<content><![CDATA[<h3 id="Zookeeper脚本配置"><a href="#Zookeeper脚本配置" class="headerlink" title="Zookeeper脚本配置"></a>Zookeeper脚本配置</h3><ul>
<li>拷贝ips<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cp</span> ips ips_zookeeper</span><br></pre></td></tr></table></figure>
修改为<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">nn1</span><br><span class="line">nn2</span><br><span class="line">nn3</span><br></pre></td></tr></table></figure></li>
<li>拷贝三个脚本<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cp</span> scp_all.sh scp_all_zookeeper.sh </span><br><span class="line"><span class="built_in">cp</span> ssh_all.sh ssh_all_zookeeper.sh </span><br><span class="line"><span class="built_in">cp</span> ssh_root.sh ssh_root_zookeeper.sh</span><br></pre></td></tr></table></figure></li>
<li>修改脚本<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">vim scp_all_zookeeper.sh </span><br><span class="line">vim ssh_all_zookeeper.sh </span><br><span class="line">vim ssh_root_zookeeper.sh </span><br></pre></td></tr></table></figure>
将三个脚本中的ips改为ips_zookeeper</li>
</ul>
<h3 id="Zookeeper安装"><a href="#Zookeeper安装" class="headerlink" title="Zookeeper安装"></a>Zookeeper安装</h3><ul>
<li>上传到<code>/tmp</code>目录下,解压 <figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">sudo</span> tar -zxvf /tmp/zookeeper-3.4.8.tar.gz -C /usr/local/</span><br><span class="line">scp -r /usr/local/zookeeper-3.4.8/ root@nn2:/usr/local/</span><br><span class="line">scp -r /usr/local/zookeeper-3.4.8/ root@nn3:/usr/local/</span><br><span class="line">ssh_root_zookeeper.sh <span class="built_in">chown</span> -R hadoop:hadoop /usr/local/zookeeper-3.4.8</span><br><span class="line">ssh_root_zookeeper.s <span class="built_in">ln</span> -s /usr/local/zookeeper-3.4.8/ /usr/local/zookeeper</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="Zookeeper配置"><a href="#Zookeeper配置" class="headerlink" title="Zookeeper配置"></a>Zookeeper配置</h3><ul>
<li><p>zoo.cfg配置</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">cd</span> /usr/local/zookeeper/conf/</span><br><span class="line"><span class="built_in">cp</span> zoo_sample.cfg zoo.cfg</span><br></pre></td></tr></table></figure>
<p>然后<code>vim zoo.cfg</code>,修改如下:</p>
<figure class="highlight properties"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 修改dataDir</span></span><br><span class="line"><span class="attr">dataDir</span>=<span class="string">/data/zookeeper</span></span><br><span class="line"><span class="comment"># 添加一下内容</span></span><br><span class="line"><span class="attr">server.1</span>=<span class="string">nn1:2888:3888 </span></span><br><span class="line"><span class="attr">server.2</span>=<span class="string">nn2:2888:3888 </span></span><br><span class="line"><span class="attr">server.3</span>=<span class="string">nn3:2888:3888</span></span><br></pre></td></tr></table></figure>
<p>分发给nn2、nn3<br> <code>scp_all_zookeeper.sh /usr/local/zookeeper/conf/zoo.cfg /usr/local/zookeeper/conf/</code></p>
</li>
<li><p><code>zkEnv.sh</code>配置<br><code>vim /usr/local/zookeeper/bin/zkEnv.sh</code><br><img src="/../../../img/000001.png" alt="000001.png"><br>分发到nn2、nn3</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">scp_all_zookeeper.sh /usr/local/zookeeper/bin/zkEnv.sh /usr/local/zookeeper/bin/</span><br></pre></td></tr></table></figure></li>
<li><p>创建zookeeper数据目录</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">ssh_root_zookeeper.sh <span class="built_in">mkdir</span> -p /data/zookeeper</span><br><span class="line">ssh_root_zookeeper.sh <span class="built_in">chown</span> -R hadoop:hadoop /data</span><br></pre></td></tr></table></figure></li>
<li><p>创建myid文件</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">ssh nn1 <span class="string">&#x27;echo &quot;1&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br><span class="line">ssh nn2 <span class="string">&#x27;echo &quot;2&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br><span class="line">ssh nn3 <span class="string">&#x27;echo &quot;3&quot; &gt; /data/zookeeper/myid&#x27;</span></span><br></pre></td></tr></table></figure></li>
<li><p>配置Zookeeper环境变量</p>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 在其他所有主机也执行</span></span><br><span class="line"><span class="built_in">sudo</span> <span class="built_in">chown</span> -R hadoop:hadoop /etc/profile.d/myEnv.sh</span><br></pre></td></tr></table></figure>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="built_in">echo</span> <span class="string">&#x27;export ZOOKEEPER_HOME=/usr/local/zookeeper&#x27;</span> &gt;&gt; /etc/profile.d/myEnv.sh</span><br><span class="line"><span class="built_in">echo</span> <span class="string">&#x27;export PATH=$PATH:$ZOOKEEPER_HOME/bin&#x27;</span> &gt;&gt; /etc/profile.d/myEnv.sh</span><br></pre></td></tr></table></figure>
<figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment"># 分发到nn2、nn3</span></span><br><span class="line">scp_all_zookeeper.sh /etc/profile.d/myEnv.sh /etc/profile.d/</span><br><span class="line"><span class="comment"># source 环境变量</span></span><br><span class="line">ssh_all_zookeeper.sh <span class="built_in">source</span> /etc/profile</span><br></pre></td></tr></table></figure></li>
</ul>
<h3 id="Zookeeper的命令"><a href="#Zookeeper的命令" class="headerlink" title="Zookeeper的命令"></a>Zookeeper的命令</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line"><span class="comment">#启动zk服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh start</span><br><span class="line"><span class="comment">#查看每个机器ZK运行的状态</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh status</span><br><span class="line"><span class="comment">#整体停止服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh stop </span><br><span class="line"><span class="comment">#重启zk服务</span></span><br><span class="line">ssh_all_zookeeper.sh /usr/local/zookeeper/bin/zkServer.sh restart</span><br></pre></td></tr></table></figure>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line"><span class="meta prompt_">#</span><span class="language-bash">启动zookeeper客户端并连接zookeeper集群</span></span><br><span class="line">/usr/local/zookeeper/bin/zkCli.sh -server nn1:2181</span><br><span class="line"><span class="meta prompt_"># </span><span class="language-bash">可以简化为:</span></span><br><span class="line">zkCli.sh</span><br></pre></td></tr></table></figure>
]]></content>
</entry>
<entry>
@ -318,80 +433,6 @@
</ul>
<h3 id="集群启动"><a href="#集群启动" class="headerlink" title="集群启动"></a>集群启动</h3><figure class="highlight bash"><table><tr><td class="code"><pre><span class="line">start-dfs.sh</span><br></pre></td></tr></table></figure>]]></content>
</entry>
<entry>
<title>Docker被墙如何继续使用</title>
<url>/posts/47807.html</url>
<content><![CDATA[<h2 id="Docker-Download"><a href="#Docker-Download" class="headerlink" title="Docker Download"></a>Docker Download</h2><blockquote>
<p>自从docker官方仓库在中国大陆被墙后docker的部署方式也发生了改变。<br>解决docker安装问题<a href="https://github.com/shenjianZ/docker_installer">https://github.com/shenjianZ/docker_installer</a></p>
</blockquote>
<ol>
<li><p>安装docker </p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo curl -fsSL https://gitee.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun</span><br></pre></td></tr></table></figure>
</li>
<li><p>启动docker</p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo systemctl start docker</span><br></pre></td></tr></table></figure>
</li>
<li><p>设置开机自启</p>
<figure class="highlight shell"><table><tr><td class="code"><pre><span class="line">sudo systemctl enable docker</span><br></pre></td></tr></table></figure>
</li>
<li><p>Docker pull images</p>
<blockquote>
<p>将image下载到阿里云镜像仓库中<br>解决docker pull 镜像问题:<a href="https://github.com/shenjianZ/docker_image_pusher">https://github.com/shenjianZ/docker_image_pusher</a></p>
</blockquote>
<ol>
<li><p><strong>登录阿里云镜像服务</strong> <a href="https://cr.console.aliyun.com/">https://cr.console.aliyun.com/</a>,</p>
<p>启用个人实例,创建一个命名空间(<code>ALIYUN_NAME_SPACE</code></p>
</li>
<li><p><strong>访问凭证</strong> 可以看到账号 用户名(<code>ALIYUN_REGISTRY_USER</code>)</p>
<p>密码(<code>ALIYUN_REGISTRY_PASSWORD</code>)</p>
<p>仓库地址(<code>ALIYUN_REGISTRY</code></p>
</li>
<li><p><strong>启动Action</strong><br>进入您自己的项目,点击<code>Action</code>,启用<code>Github Action</code>功能</p>
</li>
<li><p><strong>配置环境变量</strong><br>进入Settings-&gt;Secret and variables-&gt;Actions-&gt;New Repository secret<br> 将上一步的四个值<br> <code>ALIYUN_NAME_SPACE</code>,</p>
<p> <code> ALIYUN_REGISTRY_USER</code></p>
<p> <code>ALIYUN_REGISTRY_PASSWORD</code></p>
<p> <code>ALIYUN_REGISTRY</code><br> 配置成环境变量</p>
</li>
<li><p><strong>添加镜像</strong><br> 打开<code>images.txt</code>文件,添加你想要的镜像 可以加tag</p>
</li>
<li><p>使用镜像<br>回到阿里云,镜像仓库,点击任意镜像,可查看镜像状态。(可以改成公开,拉取镜像免登录)</p>
</li>
</ol>
</li>
</ol>
]]></content>
</entry>
<entry>
<title>组件使用</title>
<url>/posts/33957.html</url>
<content><![CDATA[<h3 id="组件自动导入"><a href="#组件自动导入" class="headerlink" title="组件自动导入"></a>组件自动导入</h3><figure class="highlight json"><table><tr><td class="code"><pre><span class="line"><span class="attr">&quot;easycom&quot;</span><span class="punctuation">:</span><span class="punctuation">&#123;</span></span><br><span class="line"> <span class="attr">&quot;autoscan&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">true</span></span><span class="punctuation">,</span></span><br><span class="line"> <span class="attr">&quot;custom&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line"> <span class="attr">&quot;^tui-(.*)&quot;</span><span class="punctuation">:</span> <span class="string">&quot;@/components/thorui/tui-$1/tui-$1.vue&quot;</span> <span class="comment">// 匹配components目录内的vue文件</span></span><br><span class="line"> <span class="punctuation">&#125;</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure>
<h3 id="tui-sticky-吸顶容器"><a href="#tui-sticky-吸顶容器" class="headerlink" title="tui-sticky 吸顶容器"></a><code>tui-sticky 吸顶容器</code></h3><blockquote>
<p>包含 以下 <code>tui</code> 组件 :</p>
<ul>
<li>tui-sticky</li>
<li>tui-list-view</li>
<li>tui-list-cell</li>
</ul>
</blockquote>
<figure class="highlight html"><table><tr><td class="code"><pre><span class="line"><span class="tag">&lt;<span class="name">tui-sticky</span> <span class="attr">:scrollTop</span>=<span class="string">&quot;scrollTop&quot;</span> <span class="attr">stickyHeight</span>=<span class="string">&quot;104rpx&quot;</span> <span class="attr">container</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!-- header start --&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">template</span> <span class="attr">v-slot:header</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">view</span> <span class="attr">class</span>=<span class="string">&quot;sticky-item&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">view</span> <span class="attr">class</span>=<span class="string">&quot;setting&quot;</span>&gt;</span>设置<span class="tag">&lt;/<span class="name">view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">template</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!-- header end --&gt;</span></span><br><span class="line"> <span class="comment">&lt;!--内容 start--&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">template</span> <span class="attr">v-slot:content</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">tui-list-view</span> <span class="attr">class</span>=<span class="string">&quot;content&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">tui-list-cell</span> <span class="attr">:arrow</span>=<span class="string">&quot;false&quot;</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;<span class="name">switch</span> <span class="attr">class</span>=<span class="string">&#x27;switch&#x27;</span> <span class="attr">checked</span> <span class="attr">color</span>=<span class="string">&quot;#FFCC33&quot;</span> /&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">tui-list-cell</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">tui-list-view</span>&gt;</span></span><br><span class="line"> <span class="tag">&lt;/<span class="name">template</span>&gt;</span></span><br><span class="line"> <span class="comment">&lt;!--内容 end--&gt;</span></span><br><span class="line"><span class="tag">&lt;/<span class="name">tui-sticky</span>&gt;</span></span><br><span class="line"></span><br><span class="line"><span class="tag">&lt;<span class="name">script</span> <span class="attr">setup</span>&gt;</span><span class="language-javascript"></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">import</span> &#123; ref &#125; <span class="keyword">from</span> <span class="string">&#x27;vue&#x27;</span></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">import</span> &#123; onPageScroll &#125; <span class="keyword">from</span> <span class="string">&#x27;@dcloudio/uni-app&#x27;</span></span></span><br><span class="line"><span class="language-javascript"></span></span><br><span class="line"><span class="language-javascript"> <span class="comment">// 定义 scrollTop 响应式变量</span></span></span><br><span class="line"><span class="language-javascript"> <span class="keyword">const</span> scrollTop = <span class="title function_">ref</span>(<span class="number">0</span>)</span></span><br><span class="line"><span class="language-javascript"> <span class="comment">// 监听页面滚动事件</span></span></span><br><span class="line"><span class="language-javascript"> <span class="title function_">onPageScroll</span>(<span class="function">(<span class="params">e</span>) =&gt;</span> &#123;</span></span><br><span class="line"><span class="language-javascript"> scrollTop.<span class="property">value</span> = e.<span class="property">scrollTop</span></span></span><br><span class="line"><span class="language-javascript"> &#125;)</span></span><br><span class="line"><span class="language-javascript"></span><span class="tag">&lt;/<span class="name">script</span>&gt;</span></span><br></pre></td></tr></table></figure>
]]></content>
<tags>
<tag>uniapp</tag>
</tags>
</entry>
<entry>
<title>uniapp 开发</title>
<url>/posts/58817.html</url>
<content><![CDATA[<ul>
<li><a href="../component1">uniapp component</a></li>
</ul>
]]></content>
<tags>
<tag>uniapp</tag>
</tags>
</entry>
<entry>
<title>无法访问外网?需要订阅代理服务?</title>
<url>/posts/14011.html</url>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,172 @@
---
title: 逻辑回归
tags: logistic-regression
mathjax: true
abbrlink: 60504
date: 2025-01-20 15:30:08
---
### logistic regression code
```python
import pandas as pd
import numpy as np
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
# 1. 加载乳腺癌数据集
data = load_breast_cancer()
# 2.1 数据集基本处理
df = pd.DataFrame(data.data, columns=data.feature_names)
df['target'] = data.target
for i in df.columns:
# 检查列是否有缺失值
if np.any(pd.isnull(df[i])):
print(f"Filling missing values in column: {i}")
#2.2 确认特征值、目标值
X = df.iloc[:,0:df.shape[1] - 1]
y = df.loc[:,"target"]
# 2.3 分割数据
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size=0.3)
# 显示前几行数据
df.head(1)
# 3. 特征工程 标准化
transfer = StandardScaler()
X_train = transfer.fit_transform(X_train)
X_test = transfer.transform(X_test)
# 4 机器学习 逻辑回归
estimator = LogisticRegression()
estimator.fit(X_train,y_train)
# 5. 模型评估
print(f"模型准确率:{estimator.score(X_test,y_test)}")
print(f"模型预测值为:\n{estimator.predict(X_test)}")
```
### 分类评估的参数
- 准确率
准确率是所有预测正确的样本占总样本的比例
$$Accuracy = \frac{TP+TN}{TP+FN+FP+TN}$$
- 精准率
精准率(又称查准率)是指所有被预测为正类的样本中,真正为正类的比例
$$Precision = \frac{TP}{TP+FP}$$
- 召回率
召回率(又称查全率)是指所有实际为正类的样本中,被正确预测为正类的比例
$$Recall = \frac{TP}{TP+FN}$$
- F1-score
F1 值F1 Score是精准率和召回率的调和平均数综合考虑了精准率和召回率的影响。
$$ F1 = 2 \times \frac{\text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}} $$
- roc曲线
tpr、fpr来衡量不平衡的二分类问题
```python
import pandas as pd
import numpy as np
from sklearn.datasets import load_breast_cancer
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report, roc_auc_score
# 1. 加载乳腺癌数据集
data = load_breast_cancer()
# 2.1 数据集基本处理
df = pd.DataFrame(data.data, columns=data.feature_names)
df['target'] = data.target
for i in df.columns:
# 检查列是否有缺失值
if np.any(pd.isnull(df[i])):
print(f"Filling missing values in column: {i}")
# 2.2 确认特征值、目标值
X = df.iloc[:, 0:df.shape[1] - 1]
y = df.loc[:, "target"]
# 2.3 分割数据
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
# 显示前几行数据
df.head(1)
# 3. 特征工程 标准化
transfer = StandardScaler()
X_train = transfer.fit_transform(X_train)
X_test = transfer.transform(X_test)
# 4 机器学习 逻辑回归
estimator = LogisticRegression()
estimator.fit(X_train, y_train)
# 5. 模型评估
print(f"模型准确率:{estimator.score(X_test, y_test)}")
y_pred = estimator.predict(X_test)
print(f"模型预测值为:\n{y_pred}")
# 5.1 精确率、召回率
ret = classification_report(y_test, y_pred, labels=[1, 0], target_names=["良性", "恶性"])
roc_score = roc_auc_score(y_test, y_pred)
print(f"准确率、召回率:{ret}")
print(f"roc_score:{roc_score}")
```
### 类别不平衡的处理
先准备类别不平衡的数据
```python
from imblearn.over_sampling import RandomOverSampler,SMOTE
from imblearn.under_sampling import RandomUnderSampler
from sklearn.datasets import make_classification
import matplotlib.pyplot as plt
from collections import Counter
# 1.准备类别不平衡的数据
X, y = make_classification(
n_samples=5000,
n_features=2,
n_informative=2,
n_redundant=0,
n_repeated=0,
n_classes=3,
n_clusters_per_class=1,
weights=[0.01, 0.05, 0.94],
random_state=0,
)
counter = Counter(y)
plt.scatter(X[:,0],X[:,1],c=y)
plt.show()
```
- 过采样
增加训练集的少数的类别的样本,使得正反例样本数据接近
- 随机过采样RandomOverSampler)
```python
ros = RandomOverSampler()
X_resampled,y_resampled = ros.fit_resample(X,y)
print(Counter(y_resampled))
plt.scatter(X_resampled[:,0],X_resampled[:,1],c=y_resampled)
plt.show()
```
![](/img/machinelearning/over_random_sampling.png)
- `SMOTE`过采样SMOTE
```python
smote = SMOTE()
X_resampled,y_resampled = smote.fit_resample(X,y)
print(Counter(y_resampled))
plt.scatter(X_resampled[:,0],X_resampled[:,1],c=y_resampled)
plt.show()
```
![](/img/machinelearning/over_smote_sampling.png)
- 欠采样
减少训练集的多数的类别的样本,使得正反例样本数据接近
- 随机欠采样RandomUnderSampler
```python
rus = RandomUnderSampler(random_state=0)
X_resampled,y_resampled = rus.fit_resample(X,y)
print(Counter(y_resampled))
plt.scatter(X_resampled[:,0],X_resampled[:,1],c=y_resampled)
plt.show()
```
![](/img/machinelearning/under_sampling.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB