自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 GIthub搭建静态网页并绑定阿里云域名

0.背景创建一个静态网站用于展示自己,组织,项目等。1.利用github建立网站建立一个以用户名打头的仓库,形式为xxx.github.io,xxx必须是你的用户名,否则可能不起作用。仓库可以是privte或者public的,但是注意即使仓库是private,仍然可以通过网站访问到部分信息。克隆仓库,建立一个index.html网页(访问网站时默认展示的网页),然后add,commit,...

2018-11-18 15:20:47 910

原创 Mac上无法ssh localhost

0.背景在Hadoop的伪分布式等场景中,我们需要主机可以ssh到自身启动守护进程,所以需要无密码登录localhost。1.正常的流程在其他Unix-like的系统中,我们使用一下方式即可。ssh-keygen -t -rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys关于a...

2018-11-18 14:23:58 2882 1

原创 Mac上gdb启用pretty printers(STL格式美化)

0.背景gdb原生态对于STL的输出不太直观,为了可以直观的查看STL的值,我们进行相关的配置。1.方式概览要实现这种需要有多种方式,https://sourceware.org/gdb/wiki/STLSupport 这里介绍了3种主要的方式。我们这里介绍第一种方式,这种方式不仅最简单也是最好用的。提一下第二种方式,在大型项目中通常我们的容器也会嵌套别的容器,这种情况下第二种方式就比较弱...

2018-11-03 19:53:08 2436

原创 Mac上Gdb安装和使用的过程

0.1 背景Gdb是一款代码调试工具。Mac下依旧支持,但是由于MacOS系统本身以及版本不协调等原因使用过程会遇到各种各样的问题。本文详细记录了从Gdb安装,钥匙串配置,与VScode结合调试的过程。0.2 版本Mac版本:macOS High Sierra 10.13.6Gdb版本:8.01 Gdb安装最快捷的方法是使用brew来安装,命令如下。brew install gdb...

2018-11-02 11:57:43 10704 4

原创 Hive中行拆分操作

0.背景在使用Hive的时候有时候会遇到需要将一行“拆分”成多行的操作,如下。原始数据格式,表名为student_tableclass student_array1 [Tom,Jone]2 [Lily,lucy]目标数据格式class student_name1 Tom1 Jone2 Lily2 ...

2018-09-20 15:02:25 1763

转载 编程语言中负数取余的问题

全文转自:http://ceeji.net/blog/mod-in-real/背景最近在一道 Java 习题中,看到这样的一道题:// What is the output when this statement executedSystem.out.printf(-7 % 3);正整数的取余运算大家都很熟悉,但是对于负数、实数的取余运算,确实给人很新鲜的感觉。于是我对此进行...

2018-09-11 20:36:21 28140 3

原创 Pandas reshape相关函数介绍(pivot,pivot_table,stack,unstack,melt)

0.背景在Pandas的使用中,常常需要到行列切换的情况,即所谓的数据透视表,这里根据Pandas当中的此类专题进行总结,主要解析pivot,melt,stack,unstack几个函数的使用。**1.pivot(一定要看下pivot_table)pivot做的就是从源数据构造透视表的过程,透视表是在数据统计中一个数据汇总的方式。pivot使用例子如下所示。import pan...

2018-08-31 20:11:50 11026 3

原创 Hive当中实现pivot操作

0.背景实际工作当中遇到这样一个问题,数据如下,但是我想通过SQL将数据转换成按列展示的形式,即常用的pivot透视操作。# 原始数据id item value1 a 10 2 b 211 b 152 a 20# 次级目标格式(SQL)id itemValue1 a-10,b-152 a-20,b-21# 目标格式id it...

2018-08-31 13:38:05 13333 3

原创 使用国内镜像修改pip源

0.背景博主通常使用anaconda来管理Python环境,但是anaconda有个问题就是包的更新并不及时,在pandas已经有0.23版本的时候anaconda当中仍然只有0.20版本。所以我们有时候需要使用pip进行安装。但是由于网络问题,使用pip安装通常很慢。本文介绍常用的pip国内源,以及替换源的方法。1.临时使用国内源如果只是暂时使用国内源,那么pip install -...

2018-08-22 10:55:29 17128 1

原创 Python中for后接else的语法

0.背景今天看到了一个比较诡异的写法,for后直接跟了else语句,起初还以为是没有缩进好,查询后发现果然有这种语法,特此分享。之前写过c++和Java,在for后接else还是第一次见。1.试验# eg1import numpy as npfor i in np.arange(5): print ielse: print("hello?")# 0# 1...

2018-08-21 20:08:25 37817 7

原创 Pandas中使用loc将列表等集合赋值给行或列的每一个元素

0.背景在使用Pandas进行数据处理过程当中,有时候需要将数据的某一列都赋值为某一个列表的形式。但是如果列的元素个数与列表的元素个数相同时赋值,会导致列表中的每一个元素对应到了列的一个表格中(详情见下)。本文即解决这样的问题。1.对应赋值import pandas as pdimport numpy as npdata = pd.DataFrame({"A":np.aran...

2018-08-08 16:23:11 15469

原创 Vundle配置文件解析与使用指南

0.简介Vundle是Vim Bundle的缩写,是一个Vim插件管理工具。Vundle allows you to… - keep track of and configure your plugins right in the .vimrc - install configured plugins (a.k.a. scripts/bundle) - update configur...

2018-07-30 19:38:13 2575

原创 冒泡排序及其优化

Bubble Sort比较简单,本文首先列出了基础版本Bubble Sort的伪代码,之后做两点小的优化。1.基础版本BubbleSort# 原始版的BubbleSort# 时间复杂度为O(n^2)function BubbleSort(array X[], int length) { for (int i = 0; i < length; i++) { ...

2018-07-27 16:38:37 1261 2

原创 Jupyter Notebook 增加kernel的方法

jupyter notebook 增加kernel的方法有很多朋友会遇到这样一个问题:在anaconda中创建了多个环境,也许python版本是一样的,但是装的包以及版本不一样。启动jupyter notebook后,在new的下拉菜单中却无法使用这些环境。本文就解决这样的问题。假如我现在Ubuntu系统自带的python是python2,anaconda默认的是python3,我还有一个

2018-07-19 11:55:59 30108 7

原创 CentOS7.4网站部署全纪录

本文用于在云服务器(CentOS7.4)上部署网站,但不包含数据库的安装和配置。0 前置准备CentOS 7.4服务器网站的war包(网站不包含数据库交互)1 安装jdk,tomcat,环境变量配置,tomcat自启动复制文末脚本,命名为DeployWebsite.sh,将war包和脚本放在一个目录,使用以下命令启动脚本。bash DeployWebsite.sh2 ...

2018-07-18 23:42:26 3166

原创 Mac下实现Java版本的切换

0.背景因为项目稳定的原因,可能需要旧版的JDK,而有的时候又需要比较新的JDK。如果每次安装卸载都太麻烦了,所以最好有一个可以在两个JDK版本中进行切换的方法。1.java_home命令java_home可以用来检测Mac系统安装的Java环境,并返回那个环境可以用来设置$JAVA_HOME的值。# 详细见这里,注意,不加/usr/libexec路径man java_hom...

2018-07-18 21:08:34 3491

原创 Geohash编码原理解析(附代码)

本文最后修改于2018-03-26,文章有问题或者转载请及时联系本人,如果对你有帮助,别忘了点下关注和喜欢,感谢!本文文字内容,图片参考整理自:http://www.cnblogs.com/LBSer/p/3310455.html0 背景我们在日常生活中常常遇到这样的需求,在某一地点的时候需要找到当前位置最近的餐馆(地铁站,厕所)等。app接到我们的请求的时候可以计算当前位置和全国所有...

2018-03-26 23:16:00 3263

原创 谷歌机器学习术语表

https://developers.google.cn/machine-learning/glossary/

2018-03-20 16:21:00 384

原创 什么是P问题,NP问题,NPC问题,NP-Hard问题

本文搬运自什么是P问题、NP问题和NPC问题,作者是Matrix67,本文在原文之上略做修改,加黑了重点的地方, 对部分稍难理解的地方做了解释,原文已经讲的非常清楚了,向原作者致敬(作者12年前写这篇文章的时候应该只是高中生),转载请保留原作者信息!如果你觉着我的博客对你有帮助,麻烦点下喜欢和关注哦!最近组里重新分享关于优化的部分知识,其中涉及到复杂度的问题,又重新提起了被我扔掉很久的NP...

2018-01-26 15:59:00 2304

原创 与论文结合详解XGBoost参数

本文最后修改于2018-01-23,文章有问题或者转载请及时联系本人,如果对你有帮助,别忘了点下关注和喜欢,感谢!0 前言网络上XGBoost的参数翻译很多,但是都没做什么解释,本文一部分内容参考自 Complete Guide to Parameter Tuning in XGBoost (with codes in Python),一部分内容是根据...

2018-01-23 11:58:00 472

原创 Jupyter Notebook远程登录及自定义配置

本文最后修改于2018-01-22,文章有问题或者转载请及时联系本人,如果对你有帮助,别忘了点下关注和喜欢,感谢!0 背景anaconda的Jupyter Notebook使用越来越普遍,但是默认形式的配置(默认目录,是否自动打开浏览器,端口等)未必是大家所适应的,本文即基于这样的问题,介绍Jupyter Notebook的自定义配置,以及如何远程登录...

2018-01-22 20:48:00 979

原创 缓解pandas中DataFrame占用内存过大的问题

本文最后修改于2018-01-21,文章有问题或者转载请及时联系本人,如果对你有帮助,别忘了点下关注~0 背景在我们使用pandas进行数据处理的时候,有时候发现文件在本地明明不大,但是用pandas以DataFrame形式加载内存中的时候会占用非常高的内存,本文即解决这样的问题。1 原因如果是计算机相关专业的同学,你应该知道int8,int16,int64的区别。如果你忘记了,那...

2018-01-21 14:54:00 14045

原创 稀疏矩阵存储格式CSC(Compressed Sparse Columns Format)

最近在看XGBoost的论文,其中提到为了并行学习,我们使用了Column Block的这种方法[1],而每个Block中的数据,我们就是以CSC形式存储的。本文根据网络内容重新整理,介绍下CSC这种格式。主要参考自理解Compressed Sparse Column Format (CSC)目的 CSC的目的就是用来压缩矩阵,主要是使用一些信息来表示矩阵中非0元素存储的位置。Spark

2018-01-15 19:27:57 9411 2

原创 解决coursera可以登录但无法播放视频

解决coursera可以登录但无法播放视频2018-1-4日可用。解决方法首先提出解决方法,无论你是mac还是windows还是Linux系统,系统中都会有一个hosts文件。这个文件在各系统中的地址如下。mac系统 => /private/etc/hostsLinux系统 => /etc/hostswindows系统 => C:\Windows\System32\dr

2018-01-04 16:04:11 71652 102

原创 mac上XGBoost多线程版本安装[mac][high sierra]

本文最后更新于2017/12/28,看起来很多,实际安装命令很少,多数内容在总结安装过程中可能出现的问题。各版本情况:mac:10.13.2XGBoost:0.6gcc:7.2关于xgboost的安装我们可以参考官方文档:Installation Guide,但是使用mac的同学要注意,默认我们使用pip安装的xgboost并不是多线程的,包括未安装gcc直接从源码编译的也不是多线程的。下面我们介绍

2017-12-28 20:58:18 1385

原创 matplotlib中的颜色和标记

matplotlib中的颜色和标志在matplotlib中绘图标志有两种,一种是点标志(marker),一种是线标志(linestle),可选的参数如下。linestyle'-' solid line style'--' dashed line style'-.' dash-dot line style':' dotted line stylelin

2017-12-25 19:41:26 4988

原创 matplotlib封装探索

本文参考这里,转载请注明出处!绘图:matplotlib核心剖析matplotlib是基于Python的开源项目,旨在为Python提供一个数据绘图包。在建模过程中数据分布,图表的分析非常重要。Matplotlib使用numpy数组运算,并调用一系列其他的Python库来实现硬件交互。matplotlib的核心是一套由对象构成的绘图API。matplotlib项目由John D. Hunter发起,

2017-12-25 19:35:46 1518

原创 pandas中时间窗函数rolling的使用

在建模过程中,我们常常需要需要对有时间关系的数据进行整理。比如我们想要得到某一时刻过去30分钟的销量(产量,速度,消耗量等),传统方法复杂消耗资源较多,pandas提供的rolling使用简单,速度较快。函数原型和参数说明DataFrame.rolling(window, min_periods=None, freq=None, center=False, win_type=None, on=Non

2017-12-20 15:27:02 69400 1

原创 Hive 实现将时间(时间戳)归到某时间片

在进行数据处理或者建模的时候我们常常需要将某一时间段内的时间统一归于到某一时刻,来表征他们同属于这一时间段。比如2017-12-19 13:23:30,我们按照10min作为一个时间段向前划分,这个时间会被划分到2017-12-19 13:20:00,如果按照30min作为一个时间段,这个时间会被划分到2017-12-19 13:00:00。其他时间段长度可以依次类推。如果使用python,scal

2017-12-19 17:55:40 7724 2

原创 XGBoost的以mae作为优化目标探究

1 mae/mad和mse介绍Mse:mean-square error。可导,常常作为loss function。 MSE(y,yˆ)=1nsamples∑i=0nsamples−1(y−yˆ)2MSE(y,\widehat{y}) = \frac{1}{n_{samples}} \sum_{i=0}^{n_{samples}-1}(y-\widehat{y})^{2} Mae:mean

2017-12-15 19:37:23 4666

原创 Mac下查看已安装的JDK版本及目录

Mac下查看已安装的JDK版本及目录首先打开终端,输入/use/libexec/java_home -V即可。

2017-12-15 11:49:16 4623 2

原创 XGBoost参数详解

本文参考自 Complete Guide to Parameter Tuning in XGBoost (with codes in Python),在其翻译基础上个别地方加上了自己的补充。XGBoost的优点正则 标准的GBM实现是没有正则的。XGBoost也以regularized boosting技术闻名。并行处理 XGBoost实现了并行化的处理。XGBoost基于

2017-12-13 21:11:00 2643

原创 Hive中日期与时间戳的转换

hive中日期与时间戳的转换

2017-12-13 19:32:03 19386

原创 在Ubuntu中允许root远程访问

在Ubuntu中允许root远程访问如果使用如xshell等远程工具首次通过root连接Ubuntu会提示拒绝访问,并不是密码不正确,而是Ubuntu默认禁止以root远程连接。 我们可以进行适当的配置来使root远程连接可用。 1.首先在本机使用root修改/etc/ssh/sshd_config文件。 vim /etc/ssh/sshd_config将PermitRootLogin的值改为y

2017-06-19 23:22:15 1825

原创 Ubuntu下设置tomcat为服务(开机启动)

Ubuntu下设置tomcat为服务(开机启动)环境:Ubuntu14.04 tomcat版本:apache-tomcat-8.5.15(来源官方网站) 1 将tomcat下bin文件夹的catalina.sh文件拷贝到/etc/init.d下,并改名cp /path/apache-tomcat-8.5.15 /etc/init.dcd /etc/init.dmv catalina.sh t

2017-06-16 22:24:36 2990

原创 Linux下为sudo命令定义PATH环境变量

Linux下为sudo命令定义PATH环境变量有时候安装了一个程序到/usr/local/bin目录下,这个程序需要root权限执行。但是用sudo去执行的时候,又收到”sudo: XXXXX: command not found“的错误提示。这是因为当你使用sudo去执行一个程序时,出于安全的考虑,这个程序将在新的、最小化的环境中执行。也就是说,诸如PATH这样的环境变量,在sudo命令下已经被重

2017-05-17 22:18:29 12080 2

原创 Linux 下安装 NVIDIA 显卡驱动

Linux 下安装 NVIDIA 显卡驱动参考此文整理:http://seisman.info/install-nvidia-drivers-under-linux.html对centOs用户来说,有两种安装NVIDIA显卡驱动的方法,从ELRepo源中安装或者从源码编译驱动。1 从ELRope源中安装驱动1.1 添加ELRope源:sudo rpm --import https://www.elr

2017-05-17 21:49:23 2539

原创 Linux中sudo执行网络代理的命令

Linux中sudo执行网络代理的命令在Linux系统中,有时候root和普通用户都设置了代理,但是通过sudo执行仍然不能访问网络。比如:sudo pip install 解决方法是在/etc/sudoers中加入:Defaults env_keep += "http_proxy https_proxy no_proxy"重试即可。

2017-05-17 21:28:45 2912 1

原创 更改Anaconda下载源

更改Anaconda下载源使用默认的下载源速度较慢,可以使用清华大学的源,在Anaconda Prompt中输入以下命令添加源:conda config --add channels 'https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/'conda config --set show_channel_urls yes注意:首次运行con

2017-05-16 22:13:43 2254

原创 Jupyter配置及远程登录

Jupyter配置及远程登录Anaconda的Jupyter使用越来越普遍,但是默认目录等都并不是大家希望的,本节介绍Jupyter的自定义配置以及如何远程登录jupyter notebook。1 Jupyter自定义配置Jupyter无论2和3默认都没有个性化配置文件,我们需要使用一下命令手动生成jupyter notebook --generate-config。根据系统不同生成位置也不同,但默

2017-05-16 22:03:10 7916 1

空空如也

空空如也

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

TA关注的人

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