自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 spark读写数据的文件顺序问题

1.最近在用spark读写parquet文件,流程主要是把一个其他格式的大文件(行有序)转成parquet文件,这个parquet实际是包含很多子文件parquet的.然后再用spark读parquet,结果发现行的顺序错乱了.于是检查问题发生的原因.首先说下这边说的顺序主要是说 行顺序.而且这个顺序错乱指的是 子文件间的相对顺序错乱,在单个子文件中的顺序还是不会变的(如果单个子文件没有被进一步拆分的话). 经过检查发现,不光是parquet,只要是spark读这种包含多个子文件的数据时,都会出现这种

2021-05-13 11:35:20 1369

原创 spark相关问题解决记录 lz4压缩parquet

1.最近想用spark输出parquet,但在用lz4压缩时出现了问题,各种报错.首先是报错的是native lz4 library not available,这个我查了蛮久,大概就是hadoop中少了/Hadoop_Path/lib/native 中少了一个so. 因为这个报错是我在本地装了单机版本的spark, 其中的hadoop版本是pre-built在里面的.好在服务器集群中是没问题的.然后在服务器运行的时候又报错了.报错信息是No enum constant org.apache.p

2021-04-27 14:45:55 1110

原创 Apache parquet格式解析

最近在研究列式存储文件格式,所以就研究了下apache parquet格式.下面将讲下该格式相关东西,慢慢更新.因为我是用spark去读写parquet的,所以下面的分析会涉及部分spark源码.Parquet版本区别在spark输出parquet有两个版本,v1和v2. 这两个版本主要是在数据编码上有区别,其中v1没有用最新的rlebit算法,压缩上表现可能会差点.注意:默认的是v1版本.Parquet写版本设置spark写parquet有两个版本,默认是v1.org.apach

2021-03-04 14:38:31 1072 1

原创 spark ML BinaryClassificationEvaluator和MulticlassClassificationEvaluator一些总结

最近在用spark做随机森林分析, 数据是二分类的, 在做的过程中遇到了一些问题,记录一下. 注: 本文是在spark2.4.5版本, java语言, 用的是spark ML , 非spark MLlib.在用StringIndexer做标签索引转换时,由于默认是按类别数量排序, 最多的索引为0,然后为1这种. 但是后面二分类评估的时候是按照 label为1当在positive,也就是少的那一类. 然而我的数据 positive 那一类数量最多,从而导致评估模型的时候有问题.解决方法: 直接..

2020-05-20 19:58:56 3009 2

原创 VCF文件中QUAL和GQ的区别

最近开始分析vcf文件, 于是去搜了相关VCF格式解读的博客.大部分关于这两个指标的解读如下,都是描述质量值的,但也没说具体啥区别.QUAL:Phred格式(Phred_scaled)的质量值,表示在该位点存在variant的可能性;该值越高,则variant的可能性越大;计算方法:Phred值 = -10 * log (1-p) p为variant存在的概率; 通过计算公式可以看出值为1...

2020-04-24 15:26:51 4495 1

原创 基金涨幅监控之python爬虫

年后被朋友带入基金的坑,天天说暴涨,各种牛市。于是小白的我就入坑了,稀里糊涂的买了几个。结果还没上车两天,突然暴跌,内心惨痛。每天在支付宝里面点击各个基金看当日涨幅感觉太繁琐,于是用python写了个脚本,这样方便看下。当然还是不看的好,这样你就能忘记伤痛。这边爬的天天基金的数据,不过这个数据和当日收益还是会有点出入。但大体差不多,除了原油基金!!!(吐嘈易方达原油)下面附上代码i...

2020-04-07 14:50:37 1324

原创 景点评论爬虫之微博爬虫和携程爬虫

最近帮同学写了个爬虫,爬取微博上景点评论以及携程上景点评论.下面都是以景点夫子庙为例微博爬虫在微博搜索夫子庙关键词,然后得到网页链接,我们用审查元素分析,应该是ajax模式,于是得到它的请求头,分析它的参数,应该就是只有一个page变量.其请求头网页.接下来我们就可以爬取在夫子庙这个地点发的微博了.注意,因为第一页有点不一样,所以我是从第二页开始爬取的,不过微博有个反爬机制,你最多只能...

2019-04-15 16:23:23 1827 5

原创 算法导论快速排序之python和c++实现

1.快速排序快速排序是一种比较快的排序算法,其主要思想是:具体思想不再赘述。下面给出具体代码实现。2.python3实现#quick sort#python3#Yanglin Tudef partition(arr, p, r): x = arr[r] i = p-1 for j in range(p, r): if arr[...

2018-09-07 16:21:31 304

原创 朴素贝叶斯算法之python实现 统计学习方法例4.2实战

转自:https://blog.csdn.net/GrinAndBearIt/article/details/79045143  侵删 本人在自学李航老师的统计学习方法,在学习朴素贝叶斯章节时,其中概念非常好理解,但是准备想把课本中的例题实战一下时却犯了难,有点无从下手的感觉,主要是因为怎么去合理的去写,提高代码的适应性以及重复利用率。 在网上找了蛮多博客,大部分都是是判断情感词等,其中有...

2018-08-17 10:15:46 396

原创 感知机学习算法之Python实现

感知机学习算法的Python实现training_set = [[(3, 3), 1], [(4, 3), 1], [(1, 1), -1]]w = [0, 0]b = 0def cal_y(x): global w, b length = len(w) y = b for i in range(length): y = y + w[...

2018-08-07 10:38:20 476

原创 堆排序之Python和C++实现

堆排序1.思想堆排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种。可以利用数组的特点快速定位指定索引的元素。堆分为大根堆和小根堆,是完全二叉树。大根堆的要求是每个节点的值都不大于其父节点的值,即A[PARENT[i]] >= A[i]。在数组的非降序排序中,需要使用的就是大根堆,因为根据大根堆的要求可知,最大的值一定在堆顶。2.Py...

2018-08-02 17:57:48 102

原创 strassen算法之Python实现

strassen算法strassen算法是矩阵相乘的算法,这个算法降低了时间复杂度,通常暴力破解法的时间复杂度为O(),这种方法的时间为O()Python3实现#strassen.py#python3#Yanglin Tudef matrix_add(matrix_a,matrix_b): rows = len(matrix_a) columns = len(matrix...

2018-07-27 16:26:59 2287 1

原创 最大子数组问题之Python和C++实现

最大子数组问题1.背景《算法导论》中是通过股票的购买与出售,经过问题转换,将前一天的当天的股票差价重新表示出来,即转为了一个最大子数组的问题,相当于就是寻找一个数组的和最大的非空连续子数组如 13, -3, -25, 20, -3, -16, -23, 18, 20, -7, 12, -5, -22, 15, -4, 7找到这连续的16个数里面的连续和最大的子数组,具体详情可以网上...

2018-07-25 17:14:08 266

原创 插入排序之Python3实现和c++实现

插入排序(Insert sort)1.排序思想设有一组关键字{K1, K2,…, Kn};排序开始就认为 K1 是一个有序序列;让 K2 插入上述表长为 1 的有序序列,使之成为一个表长为 2 的有序序列;然后让 K3 插入上述表长为 2 的有序序列,使之成为一个表长为 3 的有序序列;依次类推,最后让 Kn 插入上述表长为 n-1 的有序序列,得一个表长为 n 的有序序列。具体算法描...

2018-07-19 22:15:34 126

原创 归并排序之Python3实现和c++实现

归并排序(Merge sort)1.排序思想归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。图解2.Python3实现##Merge sor...

2018-07-19 15:44:59 278

原创 冒泡排序之Python实现和C++实现

冒泡排序(Bubble sort) 1.排序思想:冒泡排序的基本思想就是:从无序序列头部开始,进行两两比较,根据大小交换位置,直到最后将最大(小)的数据元素交换到了无序队列的队尾,从而成为有序序列的一部分;下一次继续这个过程,直到所有数据元素都排好序。算法的核心在于每次通过两两比较交换位置,选出剩余无序序列里最大(小)的数据元素放到队尾。另外我们可以设置状态标志,来减少交换的次序。...

2018-07-18 21:08:37 189

空空如也

空空如也

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

TA关注的人

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