美文网首页
机器学习实战入门准备工作

机器学习实战入门准备工作

作者: 凌玥君 | 来源:发表于2017-02-23 20:58 被阅读0次

    这里机器学习采用的是python2.7.13版本,安装了numpy库,和matplotlib库。
    入门工作主要分为三部分:

    一、python基础语法

    推荐几个学习基础语法的网站

    http://lib.csdn.net/base/11
    http://www.cnblogs.com/moomu/archive/2011/11/11/2245928.html
    http://www.runoob.com/python/python-basic-syntax.html

    作者这里只是按照《python数据分析与挖掘实战》中的python使用入门简单学习了基础的语法。

    '''
    python 基本命令
    '''
    print("hello world!")
    print(1+2)
    
    a=2
    #幂次计算
    print(a ** 3)
    
    #for 循环 1+2+3..+100
    s = 0
    for k in range(101):
      s=s+k
    print(s)
    #while循环
    s = 0
    k = 0
    while k<101:
        k=k+1
        s=s+k
    print(s)
    #if 条件
    s=0
    if s in range(4):
        print('不在')
    if s not in range(4):
        print('在')
    #def 定义函数
    def add2(x=2,y=0):
        return x+2,y+2
    print(add2())
    #lambda 行内函数
    x=y=2
    f= lambda x:x+2
    g= lambda x,y:x+y
    print(f(x),g(x,y))
    
    #列表
    aa=[1,2,3]
    bb=[]
    cc=[i+2 for i in aa]
    for i in aa:
        bb.append(i+2)#a.append(1)把1 添加到列表a的末尾
    print(bb,cc)
    print(bb.count(3))#统计列表中a中元素3出现的次数
    #字典,自编下标
    d={'I':20,'YOU':30}
    print(d['I'],d['YOU'])
    print(dict([['today',20],['tomorrow',30]]))
    #集合 元素不重复 无序,不支持索引
    s={1,2,2,3}#自动去重复
    print(s)
    t= set([1,2,2,3,3,4,5])#将列表转化为集合
    print(t,min(s),max(s),sum(s),sorted(s),len(s))
    #len()集合的基数,sorted(s),对其中的元素进行排序
    print(t|s,t&s,t-s,t^s)#并,交,差,对称差集(项在t或s中,但不同时出现)
    
    

    二、Numpy库的使用

    这里介绍本书:《Python数据分析基础教程:Numpy学习指南(第2版)》此书介绍的较为详细。

    作者这里只是简略的学习了一下

    '''
    numpy的基本操作
    '''
    #0,1,2的平方和立方分别相加
    def numpysum(n):
        a = ny.arange(n) ** 2
        b = ny.arange(n) ** 3
        c = a + b
        return c
    print(numpysum(3))
    
    a=ny.array([2,0,1,5])#创建数组
    print(a)
    print(a[:3])#引用前三个数字(切片)
    print(a.min())
    a.sort()#直接修改a,将a的元素从小到大排序
    print(a)
    b=ny.array([[1,2,3],[4,5,6]])#创建二维数组
    print(b*b)#输出数组的平方阵
    

    三、Matplotlib库的使用

    Matplotlib库使用较为全面介绍的一个指导网站
    http://old.sebug.net/paper/books/scipydoc/matplotlib_intro.html
    Matplotlib库一般是不允许输出中文的,为了拾起能够在图标中输出汉字,我们需要修改一些文件。

    找到配置文件matplotlibrc。可以用everything搜索这个文件。例如我的在D:\Program Files (x86)\python\Lib\site-packages\matplotlib\mpl-data\matplotlibrc路径下。

    用文本编辑器打开matplotlibrc文件。
    找到font.family一行,将前面的注释号去掉。
    找到font.sans-serif一行,将前面的注释号去掉。
    在font.sanc-serif后面的值中添加一个中文字体名。我添加的是Microsoft YaHei(微软雅黑),添加后如下:
    font.sans-serif : Microsoft YaHei,, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif

    或者是在代码中加入

    from pylab import *
    mpl.rcParams['font.sans-serif'] = ['SimHei']
    

    之后,需要加一个u即可例如:xlabel(u"text for x轴")

    '''
    Matplotlib作图
    '''
    x=ny.linspace(0,10,1000)#作图的变量自变量
    y=ny.sin(x)+1#因变量y
    z=ny.cos(x**2)+1#因变量z
    
    plt.figure(figsize=(8,4))#设置图像大小
    plt.plot(x,y,label='$\sin x+1 $',color='red',linewidth=2)#作图,设置标签,线条颜色,线条大小
    plt.plot(x,z,'b--',label='$\cosx^2+1$')#作图,设置标签、线条类型
    plt.xlabel('Time(s) ')#x轴名称
    plt.ylabel('Volt')#y轴名称
    plt.title('A Simple Example')#标题
    plt.ylim(0,2.2)#显示的y轴范围
    plt.legend()#显示图例
    plt.show()#显示作图结果
    

    相关文章

      网友评论

          本文标题:机器学习实战入门准备工作

          本文链接:https://www.haomeiwen.com/subject/ihtiwttx.html