Python 的sklearn库包含许多可用于机器学习的工具,本文以经典的泰坦尼克号问题为例,来说明在Python中使用sklearn做机器学习的一般流程。由于本人对机器学习了解还不深,对于本文内容如有任何建议或意见,欢迎提出!闲话少说,咱们立即进入主题。

1. 读取并查看数据

泰坦尼克号问题,Kaggle上提供了较为详细的数据说明和下载地址,本文这里不再赘述。有需要了解的同学请移步这里

首先,我们导入需要用到的库文件,为之后工作做准备:

 # 导入后续需要用到的库文件
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pylab as plt
from sklearn.preprocessing import StandardScaler
from sklearn.cross_validation import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import confusion_matrix
from sklearn.metrics import classification_report 

然后读取数据并查看:

# 读取数据并查看
data = pd.read_csv("train.csv")

data.head()

可以看到数据长这样的: Read More →

一、间歇性404问题的解决

上周开始,手机就频繁收到报警通知,一会儿提示博客异常HTTP返回状态码为404,一会儿又提示恢复正常HTTP返回状态码为200,简直烦不胜烦。

当时工作很忙而且判断这个问题并不容易解决,索性就没花时间去研究,等到这周双休再拿出大块时间来研究解决下。今天早上起来后,Jefferson终于准备看下这个问题。

1. 重现404问题,根据log排查原因

Read More →

一、Jupyter Notebook是什么

Jupyter Notebook ,源自IPython Notebook,是一个交互式、支持多种编程语言的笔记本(以下简称Jupyter)。Jefferson目前只用它写过Python代码,因此下文相关叙述均可认为是Jupyter for Python。

二、Jupyter可以做什么

不同于Notepad++、Sublime Text、Vim等工具,Jupyter是基于Web浏览器工作的。也就是说我们将代码写在浏览器打开的一个页面里,然后在页面上发送代码执行命令,代码执行结果依然会显示在这个页面上,同时Jupyter Notebook会将所有的代码、数学公式、图表、输出结果等都保存起来。

三、怎么用Jupyter

Jupyter使用IPython解释执行Python代码,因此如果你想使用Jupyter,你得安装IPython。官方推荐 安装Anaconda,Jefferson也是安装的Anaconda,安装完之后,在终端输入:

ipython notebook

即会在浏览器中打开Jupyter的页面。 Read More →

上一部分简单介绍了GA 中标准报告的组成以及最常用的报告,这篇我们简单介绍下如何通过GA 中的自定义报告来帮助我们找到想要的数据。

本文分两部分,分别介绍自定义报告的创建和自定义报告的使用。

一、创建自定义报告

在讲创建自定义报告之前,我们先来解释GA 中两个非常重要的概念——维度和指标。

Read More →

刚接触GA的童鞋,可能都有个烦恼,就是在GA 里想要找到某个基础的指标都很困难,根本不知道在哪……这里原因可能在于,GA 的报告非常多,某个指标在其他工具有,在GA里似乎没有同样的名称。本文将简单介绍下GA 里与报告有关的问题,希望你看完后再也不会出现一些基础数据都找不到的尴尬……

以下内容分为三部分,第一部分简单介绍下标准报告的组成,第二部分介绍下自定义报告的配置,第三部分是与报告有关的最常见问题的解答。

一、标准报告

标准报告一词似乎并非官方说法,是我为了和自定义报告区分开取的一个名字,指的是Google Analytics报告下的所有的页面,如图所示:

报告下的各种页面,就是GA 默认提供的各种报告,包括但不限于概览报告、典型报告、flow报告。这里要介绍的标准报告,指的是其中的典型报告。典型报告我指的哪种呢,放个图你就知道了:

Read More →

不管你是否用过GA 这样的网站流量分析工具,或多或少你可能都看到过UTM参数。如果你订阅了知乎的每周精选,点击其中链接最终打开的页面URL应该是是类似这种形式的:

https://www.zhihu.com/question/51459956/answer/130299367?utm_campaign=weekly239&utm_source=weekly-digest&utm_medium=email

可以看到上边url 问号后边带了些小尾巴,即utm_campaign=weekly239&utm_source=weekly-digest&utm_medium=email,这种utm_开头的就是网站流量分析中常说的UTM参数,其主要用来跟踪流量的来源。

UTM参数的含义

Read More →

Google Analytics ,一般直接简称GA(后续使用简称),是目前使用较为广泛的网站流量分析工具(其实也支持移动app和其他联网设备数据的收集),包括我们熟知的知乎、豆瓣、携程等大流量站点都有使用GA来做网站流量数据的收集。

本文将介绍如何给网站加GA 代码,并以此作为《Google Analytics 教程》系列文章的第一篇。 Read More →

上篇文章Jefferson有提到过,对于站长来说,要想完全解决被劫持的问题,可行的办法就是全站上https。本文就分享下WordPress站点全站免费升级到https的方法。

为什么要升级

要回答这个问题,就要先了解下https是什么。

HTTPS,英文全称为HyperText Transfer Protocol Secure,中文译为超文本传输安全协议。相比我们常见的HTTP,HTTPS可以保证互联网通信双方数据交换的隐私和完整性。比方说,使用HTTP的网站,用户与之交互过程中的数据传输是明文的,中间链路上的嗅探者能轻易窃取或篡改传输内容,这也是运营商通过劫持流量后可以做到插入广告的原因。而使用HTTPS的站点,用户端与服务端通信之前需要先通过安全认证,之后每一步数据传输都是加密的,中间链路上的嗅探者无法获取实际传输的内容,更别说加以篡改而强制插入广告了。

既然清楚了HTTPS的好处,下边以CentOS + nginx为例WordPress站点升级到HTTPS的一些步骤。 Read More →

一、背景

可能Jefferson之前在互联网广告行业的缘故,所以对广告一向比较敏感,偶尔可以看到CPS渠道商劫持自然搜索流量,或是宽带运营商劫持强插广告的情况。然而最近的一些事情,让我对广告劫持及其应对方法更加感兴趣起来。

先是GA 持续报警页面加载时长过长(Jefferson设置的是当天平均6s以上报警),这个起初也没有在意,因为博客放在海外VPS上,连接时长相对较长,加之服务端也没做什么缓存优化,所以平均6s也不奇怪,毕竟之前也常有嘛。但是最近一两个月报警的频率越来越高,这个就真让我下决心有时间要好好优化下了。 Read More →