Numpy、Matplotlib、Pandas速成

  1. Numpy

    # -*- coding: utf-8 -*-
    import numpy as np
    
    if __name__ == '__main__':
    
        """
            Numpy速成
        """
        # 创建数组
        myarray = np.array([1, 2, 3])
        # 输出数组
        print(myarray)
        # 输出数组行列
        print(myarray.shape)
        # 创建多维数组
        myarray = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5]])
        print(myarray)
        print(myarray.shape)
        # 访问数据
        print('这是第一行:%s' % myarray[0])
        print('这是最后一行:%s' % myarray[-1])
        print('访问第三列数据:%s' % myarray[:, 2])
        print('访问第二行第三列数据:%s' % myarray[1, 2])
    
        '''
            Numpy算术运算
        '''
        # 创建多维数组
        myarray1 = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5]])
        myarray2 = np.array([[11, 21, 31], [21, 31, 41], [31, 41, 51]])
        print('向量加法运算:')
        print(myarray1+myarray2)
        print('向量乘法运算')
        print(myarray1*myarray2)
    

    输出结果:

    [1 2 3]
    (3,)
    [[1 2 3]
     [2 3 4]
     [3 4 5]]
    (3, 3)
    这是第一行:[1 2 3]
    这是最后一行:[3 4 5]
    访问第三列数据:[3 4 5]
    访问第二行第三列数据:4
    向量加法运算:
    [[12 23 34]
     [23 34 45]
     [34 45 56]]
    向量乘法运算
    [[ 11  42  93]
     [ 42  93 164]
     [ 93 164 255]]
    
  2. Matplotlib

    # -*- coding: utf-8 -*-
    """
        Matplotlib速成
            1.调用plot(),scatter()等方法,并为绘图填充数据。数据是NumPy的ndarray类型的对象
            2.设定数据标签,使用xlabel()、ylabel()方法
            3.展示绘图结果,使用show()方法
    
            Matplotlib示例:http://matplotlib.org/gallery.html
    """
    
    import matplotlib.pyplot as plt
    import numpy as np
    
    if __name__ == '__main__':
    
        '''
            绘制线条图
        '''
        # 定义绘图的数据
        myarray = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5]])
        # 初始化绘图
        plt.plot(myarray)
        # 设定x轴和y轴
        plt.xlabel('x axis')
        plt.ylabel('y axis')
        # 绘图
        plt.show()
    
        '''
            绘制散点图
        '''
        # 定义绘图的数据
        myarray1 = np.array([1, 2, 3])
        myarray2 = np.array([11, 21, 31])
        # 初始化绘图
        plt.scatter(myarray1, myarray2)
        # 设定x轴和y轴
        plt.xlabel('x axis')
        plt.ylabel('y axis')
        # 绘图
        plt.show()
    
    
    

    输出结果

    在这里插入图片描述
    在这里插入图片描述

  3. Pandas

# -*- coding: utf-8 -*-
"""
# @author  : xpf
# @time    : 2021/4/21 11:08 上午
# @file    : pandas_practice.py
# @software: PyCharm
# @desc    : Pandas速成
"""

"""
    http://pandas.pydata.org/pandas-docs/stable/
    Pandas提供了用于机器学习的复杂数据类型:矢量运算方法和数据分析方法。Pandas也提供了多种数据结构
        Series:一维数组,只允许存储相同的数据类型
        Time-Series:以时间为索引的Series
        DataFrame:二维的表格型数据结构,可以将DataFrame理解为Series的容器
        Panel:三维数组,可以理解为DataFrame的容器
"""
import numpy as np
import pandas as pd

if __name__ == '__main__':

    '''
        Series
    '''
    myarray = np.array([1, 2, 3])
    index = ['a', 'b', 'c']
    myseries = pd.Series(myarray, index=index)
    print(myseries)
    print('Series中的第一个元素:')
    print(myseries[0])
    print('Series中的c index元素:')
    print(myseries['c'])

    '''
        DataFrame
    '''
    myarray = np.array([[1, 2, 3], [2, 3, 4], [3, 4, 5]])
    rowindex = ['row1', 'row2', 'row3']
    colindex = ['col1', 'col2', 'col3']
    mydataframe = pd.DataFrame(data=myarray, index=rowindex, columns=colindex)
    print(mydataframe)
    print('访问col3的数据:')
    print(mydataframe['col3'])

输出结果:

a    1
b    2
c    3
dtype: int64
Series中的第一个元素:
1
Series中的c index元素:
3
      col1  col2  col3
row1     1     2     3
row2     2     3     4
row3     3     4     5
访问col3的数据:
row1    3
row2    4
row3    5
Name: col3, dtype: int64

参考书籍:《机器学习Python实践》

Logo

鸿蒙生态一站式服务平台。

更多推荐