• numpy和matplotlib读书笔记


    1.numpy笔记:
    获取numpy.array中最后一列的数据
    1.y = to_nparray[:,-1] # 最后一列
    2.X = to_nparray[:,0:-1] # 从第一列开始到倒数第二列


    numpy.dtype:int转字符串
    1.# np.dtype: int转字符串
    2.res = np.char.mod('%d', res)


    numpy拼接字符串array
    1.# numpy拼接字符串
    2.res = np.core.defchararray.add(prefix, res)

    numpy按行合并两个numpy.array
    1.# 按行合并两个numpy.array,ID和res是np.array
    2.data = np.hstack((ID, res))

    numpy.array转DataFrame

    1.# numpy.array转DataFrame

    2.df = DataFrame(data, columns=['ID', 'Pred'])


    numpy产生随机矩阵
    1.# 产生小数矩阵
    2.np.random.random((shape0, shape1))
    3.# 产生标准正态分布矩阵
    4.np.random.randn(shape0, shape1)




    numpy保留小数点后一位
    1.# out: optional
    2.np.around(matrix, decimals=1, out=None)
    3.# 保留两位,将decimals改为2即可

    随机产生矩阵
    np.random.rand(4,4)
    随机产生一个4*4的矩阵

    矩阵自运算

    X.flags    #数组的存储情况信息。

    X.shape  
    #结果是一个tuple,返回本数组的行数、列数、……
    X.ndim   #数组的维数,结果是一个数
    X.size    #数组中元素的数量
    X.itemsize  
     #数组中的数据项的所占内存空间大小
    X.dtype    #数据类型
    X.T   #如果X是矩阵,发挥的是X的转置矩阵
    X.trace()    #计算X的迹
    np.linalg.det(a)   #返回的是矩阵a的行列式
    np.linalg.norm(a,ord=None)  
     #计算矩阵a的范数
    np.linalg.eig(a)  
     #矩阵a的特征值和特征向量
    np.linalg.cond(a,p=None)  
     #矩阵a的条件数
    np.linalg.inv(a)  
     #矩阵a的逆矩阵


    矩阵二元运算
    内积:np.dot(a,b)
    矢量外积:outer(a,b)

    2.matplotlib笔记

    1  matplotlib简介
    matplotlib是Pythom可视化程序库的泰斗,经过几十年它仍然是Python使用者最常用的画图库。有许多别的程序库都是建立在它的基础上或直接调用它,比如pandas和seaborn就是matplotlib的外包,它们让你使用更少的代码去使用matplotlib的方法。Gallery页面中有上百幅缩略图,打开之后都有源程序,非常适合学习matplotlib。

    利用IPython --pylab可以进入Pylab模式,已经导入了matplotlib库和相关软件包(如numpy和scipy),如果安装了anconda,可以按(win + R)打开运行窗口,输入ipython --pylab启动IPython。在notebook模式下可以通过命令%matplotlib inline 使图片内嵌在交互窗口。

    2 图和子图的建立
    2.1 导入matplotlib
    import matplotlib.pyplot as plt

    2.2  建立图和子图方式一
    plt.plot( )会在最近的一个图上进行绘制
    from numpy.random import randn
    fig = plt.figure(figsize = (8,4)) #设置图的大小
    ax1 = fig.add_subplot(2,2,1)
    ax2 = fig.add_subplot(2,2,2)
    ax3 = fig.add_subplot(2,1,2)
    ax3.plot(randn(50).cumsum(),'k--') # plt.plot(randn(50).cumsum(),'k--')等效
    ax1.hist(randn(100),bins = 10, color = 'b', alpha = 0.3) #bins 分成多少间隔 alpha 透明度
    ax2.scatter(np.arange(30),np.arange(30) + 3*randn(30))
    plt.show()

    2.3 建立子图方式二
    from numpy.random import randn
    fig, axes = plt.subplots(2,2) #以数组方式访问
    t = np.arange(0., 5., 0.2)
    axes[0,0].plot(t, t, 'r-o', t, t**2, 'bs', t, t**3, 'g^') #同时绘制多条曲线
    axes[1,1].plot(randn(40).cumsum(),'b--')
    plt.show()

    2.4 主题设置
    使用style.use()函数
    df_iris = pd.read_csv('../input/iris.csv')
    plt.style.use('ggplot') #'fivethirtyeight','ggplot','dark_background','bmh'
    df_iris.hist('sepal length')
    plt.show()

    2.5  颜色、标记、线型、刻度、标签和图例
    from numpy.random import randn
    fig = plt.figure()
    ax1 = fig.add_subplot(1,1,1)
    ax1.plot(randn(30).cumsum(),color = 'b',linestyle = '--',marker = 'o',label = '$cumsum$') # 线型 可以直接'k--o'
    ax1.set_xlim(10,25)
    ax1.set_title('My first plot')
    ax1.set_xlabel('Stages')
    plt.legend(loc = 'best') #把图放在不碍事的地方 xticks([])设置刻度
    plt.show()

  • 相关阅读:
    C# 获取文件名及扩展名
    Javscript调用iframe框架页面中函数的方法
    jquery事件重复绑定的几种解决方法 (二)
    Jquery 点击事件重复获取叠加 (一)
    .NET 即时通信,WebSocket服务端实例
    .Net ASP.NET 打开指定文件夹
    动态 hover 使用变相使用
    给 layui upload 带每个文件的进度条, .net 后台代码
    layui upload 后台获取不到值
    ECharts配置项之title(标题)
  • 原文地址:https://www.cnblogs.com/155722-lq/p/12836960.html
Copyright © 2020-2023  润新知