自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HappyRocking的专栏

欢迎欢迎

  • 博客(193)
  • 资源 (4)
  • 收藏
  • 关注

原创 三大决策树的比较——ID3、C4.5、CART

类型ID3C4.5CART解决问题分类分类分类、回归划分指标信息增益增益率基尼指数指标特点会偏向可取值数目加多的属性会偏向可取值数目较少的属性划分规则选择信息增益最大的属性先找出信息增益高于平均水平的属性,再从中选择增益率最高的选择划分后基尼指数最小的属性优缺点DI3会偏向可取值数目加多的属性ID3算法并未给出处理连续数据的方法ID3算法不能处理带有缺失值的数据集ID3算法只有树的生成, 所以容易过拟合C4.5可以处理连续值C4.5...

2020-08-26 18:04:51 1411

原创 python3 自定义比较器

python3 自带的排序函数 sort()、sorted() 等,可以自定义比较器,实现特殊需求,以下介绍3种常见方法。比如现在有二维空间中的3个点,需要对它们进行排序,规则是:先按x坐标排序,如果相同,则按y坐标排序。class Pos: """ 坐标类 """ def __init__(self, x = 0, y = 0): self.x = x self.y = y def __str__(self):

2020-06-09 20:10:21 6534 1

原创 Hive之grouping sets用法及grouping_id计算方法

grouping sets 用法在Hive中,会出现对同一个数据表进行不同粒度的汇总,这时可以有两种方案:用多个sql,对不同粒度使用不同的 group by 方法。用1个sql,使用 grouping sets 方法一次性得到所有粒度的汇总。以测试数据表 tmp_student 为例:1、生成测试数据在 hive 环境中创建临时表:create table tmp.tmp_student( name string, class int, sex string,

2020-06-04 15:13:48 33818 8

原创 Hive窗口函数之preceding and following

Hive窗口函数中,有一个功能是统计当前行之前或之后指定行作为一个聚合,关键字是 preceding 和 following,举例说明其使用方法。一、加载测试数据在 hive 环境中创建临时表:create table tmp_student( name string, class tinyint, cooperator_name ...

2020-04-07 18:33:29 5313 2

原创 Python——使用scipy求解带约束的最优化问题

我们要求解的最优化问题的形式如下:min f(x)s.t.gi(x)>0,i=1,...,mhj(x)=0,j=1,...,n\begin{aligned}min \ f(x) \\s.t.\quad g_i(x)& \gt 0, i = 1,...,m\\\quad h_j(x)& = 0, j = 1,...,n\end{al...

2019-06-17 10:17:48 48827 11

原创 python中matplotlib画图中文乱码的解决方法

问题在python中使用matplotlib画图,里面的中文会显示乱码方块。解决方法这是由于matplotlib默认使用的字体中不包含中文字符引起的,可以通过将中文字符加入到默认字体中解决。前提:查找本地都有哪些中文字体打开matplotlib字体,默认为C:\Users\用户名\.matplotlib,打开fontList.json,查找中文字体如simHei,song,kai等,分别...

2019-06-12 10:34:03 30435 8

原创 Shell 语法——if else 详解

一、语法格式shell 中的 if 语句的格式如下:if 条件; then command1else command2fi或者将 then 单独另起一行也可以,这时条件后面的 ; 便可以去掉:if 条件then command1else command2figoogle 规范推荐使用第一种,即:将 ; do , ; then 和 while , for , ...

2019-05-29 17:37:16 40191 2

原创 shell中各种括号(),[],(()),[[]],{}等的作用大全及示例

一、()1、命令组连接多个命令组,用;隔开,最后一个命令后;可加可不加。括号中的命令会新开一个子shell顺序执行,所以里面的操作对括号外主进程无关。a=0(a=1;b=2;echo $a) # 子进程内输出a为1echo $a # 主进程,输出a为02、命令替换格式为 $(command),相当于 `command`。shell遇到此格式,会先执行 command 命令,得到标准...

2019-05-29 16:21:47 12694 3

原创 将本地文件导入到Hive表中(支持 TEXTFILE 、ORC 等存储格式)

1、hive表格式为TEXTFILE由于 TEXTFILE 格式没有对数据进行压缩,因此直接 load 即可。假设本地有一个文件 test_person.txt,内容为:Gong 24Tian 23想要将其导入到 TEXTFILE 格式的 tmp_test_person_txt 表内,步骤如下:1.1、创建目标表,格式为 TEXTFILE在 hive 命令行下,输入建表语句:hi...

2019-05-13 18:24:49 10791 1

原创 彻底删除git中的较大文件(包括历史提交记录)

场景适用于从一个git项目中,将体积较大的资源彻底从git中删除,包括历史提交记录。如果仅仅在目录中删除一个文件是不够的,只要在提交记录中有这个文件,那么 .git 中就会有这个文件的信息。用 filter-branch 可以强制修改提交信息,将某个文件的历史提交痕迹也抹去,就像从来没有过这个文件一样。做法0、确保本地仓库是最新版本。1、在项目根目录下运行git rev-list -...

2019-04-15 15:47:31 19929 11

原创 Leetcode算法——72、编辑距离(edit distance)

给定两个单词 word1 和 word2,找到将 word1 转化为 word2 所需的最少操作步数。(这个步数称为两个单词的编辑距离)对一个单词可以执行以下三种操作:1、插入一个字符2、删除一个字符3、替换一个字符示例:Example 1:Input: word1 = "horse", word2 = "ros"Output: 3Explanation: horse -&gt...

2019-01-15 13:18:21 1551

原创 Leetcode算法——71、简化路径(simplify path)

给定一个文件的绝对路径(unix系统),将其简化。在unix文件系统中,’.’ 表示当前目录,因此可以被忽略。’…’ 表示上一个目录,因此需要取消掉最后一层目录。示例:path = "/home/", => "/home"path = "/a/./b/../../c/", => "/c"path = "/a/../../b/../c//.//", => &q

2019-01-10 12:44:09 1191

原创 Leetcode算法——70、爬楼梯(climbing stairs)

你正在爬楼梯,共有 n 层台阶。每次可以爬 1 层或 2 层。问有多少种不重复的方法可以从楼梯底爬到楼梯顶。思路爬n层台阶,可以根据第一步的层数,将所有爬法分为两类:第一步爬1层,然后继续爬剩下的n-1层第一步爬2层,然后继续爬剩下的n-2层这两种方法是互斥且完备的。因此,n层的爬法 = (n-1) 层的爬法 + (n-2) 层的爬法。即斐波那契数列。python实现de...

2019-01-04 12:37:56 666

原创 python语法——yield 使用解析

带有 yield 的函数是一种特殊函数,其返回的函数值是一个 generator(生成器)。yield 示例举例说明 yield 的用法:生成一个自增平方序列:def square(n): for i in range(n): yield i*i # 将 i*i 放入到返回值的生成器序列中if __name__=="__main__": gen = squ...

2019-01-03 11:33:56 1504

原创 Leetcode算法——69、sqrt(x)

完成函数 int sqrt(int x)。计算并返回 x 的平方根,其中 x 是一个非负整数。返回结果去掉小数,只保留整数。示例:Example 1:Input: 4Output: 2Example 2:Input: 8Output: 2Explanation: The square root of 8 is 2.82842..., and since ...

2019-01-02 13:01:19 562

原创 python报错——Loaded runtime CuDNN library: 7.0.5 but source was compiled with: 7.1.4

今天 linux 运行 python 时报错:Loaded runtime CuDNN library: 7.0.5 but source was compiled with: 7.1.4. CuDNN library major and minor version needs to match or have higher minor version in case of CuDNN 7....

2019-01-02 11:25:13 3966

原创 pip 切换镜像源

在安装python的包时,使用pip安装,但会出现 “https://pypi.python.org/simple/scipy/” 访问不了了或者速度慢的现象。切换国内的镜像源,可以提高下载速度。国内镜像源http://pypi.douban.com/simple/ 豆瓣http://mirrors.aliyun.com/pypi/simple/ 阿里http://pypi.hustun...

2018-12-29 15:14:19 6571

原创 Leetcode算法——68、文本对齐(text justification)

给定一个单词序列和一个最大宽度maxWidth,将文本进行格式化,每一行的字符长度为maxWidth。需要使用贪婪的方法来格式化:在每一行中放入尽可能多的单词。有必要的话,可以添加额外的空格’ ',来保证每行的长度严格等于maxWidth。单词之间的空格要尽可能均分。如果一行中的空格数量不能被均分,则左边的空位要比右边的空位包含的空格数要多。特殊规则:文本的最后一行,在单词之间只能出现一个空...

2018-12-29 12:41:30 1321

原创 Leetcode算法——67、二进制数相加(add binary)

给定两个二进制字符串,返回他们的和(也是一个二进制字符串)。输入的字符串都是非空的,并且只包含1或0。示例:Example 1:Input: a = "11", b = "1"Output: "100"Example 2:Input: a = "1010", b = "1011"Output: "10101"思路按照手算加法的步骤,从最低位开始,同位相加,并考虑是否

2018-12-28 12:22:17 1176

原创 Leetcode算法——66、加1(plus one)

给定一个非空数字序列,表示一个非负整数。要求将这个整数加1。序列中每个元素都是一个单独的数字,且最高位是数组的第一个元素。最高位不是0,除非就是整个序列就只有一个0。思路按照手写加法的定义,从最低位开始加1,并计算每一位是否满10需要进1。python实现def plusOne(digits): """ :type digits: List[int] :rty...

2018-12-27 20:35:37 473

原创 Leetcode算法——65、有效数字(valid number)

判断一个字符串是否可以被翻译为一个小数。在一个有效的小数中,可能存在的字符有:1、数字0-92、正负号 +/-3、小数点 .示例:"0" => true" 0.1 " => true"abc" => false"1 a" => false"2e10" => true" -90e3 " =&amp

2018-12-26 12:38:59 773

原创 Leetcode算法——64、最小路径之和(minimum path sum)

给定一个 m*n 的非负整数矩阵,找到一条路径,从左上角到右下角,要求这条路径上的所有数组之和最小。备注:每次只能向下或向右移动。Input:[ [1,3,1], [1,5,1], [4,2,1]]Output: 7Explanation: Because the path 1→3→1→1→1 minimizes the sum.思路本题与 不重复路径I、不重复路径I...

2018-12-25 12:19:47 811

原创 Leetcode算法——63、不重复路径II(unique paths II)

一个机器人位于一个m*n的网格的左上角。它每次只能向下或向右移动一格。它试图到达网格的右下角。网格中有一些障碍物,机器人不能通过。求有多少种不重复的路径?备注:1、m 和 n 都不大于 100.2、障碍物和空地分别被标为 1 和 0。示例:Input:[ [0,0,0], [0,1,0], [0,0,0]]Output: 2Explanation:There ...

2018-12-21 12:54:07 1361

原创 Leetcode算法——62、不重复路径(unique paths)

一个机器人位于一个m*n的网格的左上角。它每次只能向下或向右移动一格。它试图到达网格的右下角。求有多少种不重复的路径?备注:m和n最大为100.示例1:Input: m = 3, n = 2Output: 3Explanation:From the top-left corner, there are a total of 3 ways to reach the bottom-r...

2018-12-20 12:39:05 2953

原创 Leetcode算法——61、旋转链表(rotate list)

给定一个链表,将其向右旋转k次,k为非负值。示例:Example 1:Input: 1->2->3->4->5->NULL, k = 2Output: 4->5->1->2->3->NULLExample 2:Input: 0->1->2->NULL, k = 4Output: 2->0-&

2018-12-19 12:41:59 404

原创 Leetcode算法——60、排列序列(permutation sequence)

集合 [1,2,3,…,n] 共有 n! 个唯一的排列。将所有排列方法按照升序排序,可以得到一个序列。比如 n=3 时的序列为:“123”“132”“213”“231”“312”“321”要求给定 n 和 k,返回序列中第 k 个排列。备注:n 的范围为 1~9k 的范围为 1~9!示例:Example 1:Input: n = 3, k = 3Output: "2...

2018-12-17 19:56:25 934

原创 Leetcode算法——59、螺旋矩阵II(square matrix II)

给定一个正整数 n,要求生成一个方阵,里面的元素为1到n^2按照螺旋顺序排列。示例:Input: 3Output:[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]思路可以参考 Leetcode算法——54、螺旋矩阵(spiral matrix),不同之处在于,54 题是给定一个矩阵,求螺旋顺序的序列;本题是给定一个序列,要求按螺旋顺序生成一个矩...

2018-12-14 12:51:14 647 1

原创 Leetcode算法——58、最后单词的长度(length of last word)

给定一个字符串,包含大小写字母和空格。返回字符串中最后一个单词的长度。如果最后一个单词不存在,返回0。备注:一个单词定义为不包含空格的字符序列。示例:Input: "Hello World"Output: 5思路从后向前,寻找到第一个出现的非空格。然后继续向前,寻找到第一个出现的空格。两者之间的单词即为最后一个单词。比如输入 “Hello World”,从后向前,第一个出现...

2018-12-13 12:37:34 365

转载 hadoop 的 linux shell 命令

转自hadoop文档 FS Shell使用指南。FS Shell调用文件系统(FS)Shell命令应使用 bin/hadoop fs <args>的形式。 所有的的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path。对HDFS文件系统,scheme是hdfs,对本地文件系统,scheme是file。其中scheme和auth...

2018-12-13 10:49:06 530

原创 Leetcode算法——57、插入区间(insert interval)

给定一系列不重复的区间,要求将一个新的区间插入到这些集合中(如果有必要,则合并)。假设这些区间已经根据起始位置排好序了。示例1:输入: intervals = [[1,3],[6,9]], newInterval = [2,5]输出: [[1,5],[6,9]]示例2:输入: intervals = [[1,2],[3,5],[6,7],[8,10],[12,16]], newInt...

2018-12-12 12:41:43 812

原创 Leetcode算法——56、合并区间(merge intervals)

给定一个区间的数组,将所有重叠的区间进行合并。示例1:输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: [1,3] 和 [2,6] 有重叠,因此合并为 [1,6].示例2:输入: [[1,4],[4,5]]输出: [[1,5]]思路先按照每个区间的起点排序,然后从小到大扫描。每次扫描,查看与前一个是否...

2018-12-11 13:06:44 3879 2

原创 Leetcode算法——54、螺旋矩阵(spiral matrix)

给定一个矩阵 m*n,返回所有元素的螺旋排列顺序(从左上角开始,顺时针旋转,由外向内)。示例1:Input:[ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ]]Output: [1,2,3,6,9,8,7,4,5]示例2:Input:[ [1, 2, 3, 4], [5, 6, 7, 8], [9,10,11,12]]Output...

2018-12-10 12:49:50 1204

原创 Leetcode算法——53、子数组的最大和

给定一个整数数组,找到连续子数组(至少包含一位)的最大和,并返回。示例:Input: [-2,1,-3,4,-1,2,1,-5,4],Output: 6Explanation: [4,-1,2,1] has the largest sum = 6.思路1、分治法nums 的连续子数组的最大和,就等于以下三者中的最大值:nums[:mid] 的连续子数组的最大和nums[mid...

2018-12-07 12:43:15 670

原创 Leetcode算法——51~52、n皇后问题

n皇后问题需要将n个皇后放置在n*n的棋盘上,保证任意两个皇后都不能处于同一行、同一列或同一斜线上。给定一个整数n,返回n皇后问题的所有不重复的解。每个解都是一种n个皇后的布局,其中 ‘Q’ 和 ‘.’ 分别代表皇后和空白。示例:Input: 4Output: [ [".Q..", // Solution 1 "...Q", "Q...", &quo

2018-12-06 13:05:59 733

原创 Leetcode算法——50、实现乘方运算

实现函数 pow(x,n),返回 xnx^nxn。备注:1、-100.0 < x < 100.02、n是一个32位的整数,范围为[−231,231−1][−2^{31}, 2^{31} − 1][−231,231−1]示例:Example 1:Input: 2.00000, 10Output: 1024.00000Example 2:Input: 2.10000, ...

2018-12-05 12:38:17 912

原创 Leetcode算法——49、字符串分组(group anagrams)

给定一个字符串数组,将所有字符串分组,每一组的字符串包含的字符相同但是顺序不同。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"],输出:[ ["ate","eat","tea"], ["nat","tan"], ["b

2018-12-04 12:40:29 2363

原创 Leetcode算法——48、全排列II

给定一系列数字,可能会包含重复数字,返回所有可能的唯一的排列。示例:Input: [1,1,2]Output:[ [1,1,2], [1,2,1], [2,1,1]]思路本题与上一题 Leetcode算法——46、全排列 很相似,不同之处在于,上一题的元素都是无重复的,而本题的元素允许重复,但是要求返回无重复的排列。上一题我们使用了 4 种方法来解决全排列问题,本题我...

2018-12-03 12:55:11 388

原创 Leetcode算法——46、全排列

给定一个无重复整数数组,返回所有可能的排列。示例:Input: [1,2,3]Output:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]思路1、字典序法使用字典序法不断寻找当前排序的下一个排序,直至返回到了起始序列。2、深度优先搜索使用递归法,维护一个结果数组、以及每个元素对应的剩余元素...

2018-11-30 12:37:41 831

原创 Leetcode算法——45、跳跃游戏II

给定一个非负整数的数组,每一个元素表示从当前位置开始跳跃一次的最大长度。你一开始站在第一个索引的位置。你的目标是用最少的跳跃次数到达最后一个索引位置。输出跳跃次数。备注:假设肯定可以跳到最后一个位置。示例:Input: [2,3,1,1,4]Output: 2Explanation: The minimum number of jumps to reach the last ind...

2018-11-28 13:48:19 704

原创 pythony语法——使用threadpool实现多线程并行

可以使用 threadpool 来实现多进程并行。示例我想用多线程求一个数列的和,可以如下操作:import threadpooldef func(dic, c): dic['count'] += cif __name__=="__main__": d = dict() d['count'] = 0 l = [1, 2, 3] pool...

2018-11-27 15:43:25 5533 2

数字图像处理_冈萨雷斯(第三版_中文版) pdf

数字图像处理(第三版),(美)冈萨雷斯、伍兹著。图像处理领域的必看经典书籍。pdf扫描版,内容完全,从封面到末页出版信息都有,页面清晰。

2018-05-28

xshell 健康配色方案

xshell 健康配色方案(黑底绿字),不同文件类型区别分明,我最喜欢的一款,对眼睛有好处哦~ 工具 -> 配色方案 -> 导入 Alt+P打开属性,外观 ,“加粗”文本选择 use bold font。

2017-09-20

好看的确认框样式xcConfirm

一个好看的确认框样式,xcConfirm,包括确认、信息、疑问、警告等多种图标,可以自定义提示信息,可以自定义按钮名称、点击按钮触发的方法,兼容IE7及以上、主流浏览器。

2017-09-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除