美文网首页嵌牛IT观察
盘点用于数据科学的三大顶级Python库(附代码)

盘点用于数据科学的三大顶级Python库(附代码)

作者: 羽_71ba | 来源:发表于2018-11-08 21:56 被阅读0次

    姓名:刘成龙  学号:16020199016

    转载自:https://www.jiqizhixin.com/articles/2018-10-09-10,有删节。

    【嵌牛导读】:盘点用于数据科学的三大顶级Python库

    【嵌牛鼻子】:数据科学  Python库

    【嵌牛提问】:你知道数据科学常用的Python库吗?

    【嵌牛正文】:

    Python在许多方面有着强大的吸引力 - 例如效率、代码可读性和速度方面,也正因为如此,对于希望提升应用程序功能的数据科学家和机器学习专家来说,Python通常是首选编程语言。(例如,Andrey Bulezyuk使用Python编程语言创建了一个很牛逼的机器学习应用程序。)

    由于其广泛的用途,Python拥有大量的库,使数据科学家可以更轻松地完成复杂的任务,而无需面对很多编程麻烦。以下是最受数据科学青睐的3个顶级的Python库,如果你正需要,那就试试吧。

    1. NumPy

    NumPy(Numerical Python的缩写)是顶级的库之一,它配备了大量有用的资源来帮助数据科学家将Python变成强大的科学分析和建模工具。这个流行的开源库可以在BSD许可下使用。它是在科学计算中执行任务的基础Python库。NumPy是一个更大的基于python的开源工具生态系统SciPy的一部分。

    这个库为Python提供了大量的数据结构,可以轻松地执行多维数组和矩阵计算。除了用于求解线性代数方程和其他数学计算之外,NumPy还被用作不同类型通用数据的通用多维容器。

    此外,它能够完美集成其他编程语言,如C/ c++和Fortran。NumPy库的多功能性使它能够轻松快速地与各种数据库和工具相结合。例如,让我们看看如何使用NumPy(缩写为np)来相乘两个矩阵。

    从导入库开始(对于这些示例,我们将使用Jupyter笔记本)。

    import numpy as np

    接下来,让我们使用eye()函数生成具有规定维数的单位矩阵:

    matrix_one = np.eye(3)

    matrix_one

    输出结果如下:

    array([[1., 0., 0.],

    [0., 1., 0.],

    [0., 0., 1.]])

    让我们生成另一个3x3矩阵。

    我们将使用arange([起始号码]、[停止号码])函数来排列数字。注意,函数中的第一个参数是要列出的初始数字,最后一个数字不包含在生成的结果中

    此外,reshape()函数用于将原始生成的矩阵的维数修改为所需的维数。为了使矩阵“可乘”,它们应该具有相同的维度。

    matrix_two = np.arange(1,10).reshape(3,3)

    matrix_two

    输出如下:

    array([[1, 2, 3],

    [4, 5, 6],

    [7, 8, 9]])

    让我们使用dot()函数乘以两个矩阵:

    matrix_multiply = np.dot(matrix_one, matrix_two)

    matrix_multiply

    输出如下:

    array([[1., 2., 3.],

    [4., 5., 6.],

    [7., 8., 9.]])

    接着,我们设法在不使用vanilla Python的情况下将两个矩阵相乘。以下是此示例的完整代码:

    import numpy as np

    #generating a 3 by 3 identity matrix

    matrix_one = np.eye(3)

    matrix_one

    #generating another 3 by 3 matrix for multiplication

    matrix_two = np.arange(1,10).reshape(3,3)

    matrix_two

    #multiplying the two arrays

    matrix_multiply = np.dot(matrix_one, matrix_two)

    matrix_multiply

    2. Pandas

    panda是另一个可以提高您的Python数据科学技能的大型库。就像NumPy一样,它属于SciPy开源软件家族,并且可以在BSD自由软件许可下使用。

    Pandas提供多功能和强大的工具,用于整理数据结构和执行大量数据分析。该库适用于不完整,非结构化和无序的实际数据,并提供了用于整形,聚合,分析和可视化数据集的工具。

    此库中有三种类型的数据结构:

    Series:单维阵列

    DataFrame:具有异构类型列的二维

    Panel:三维,大小可变数组

    例如,让我们看看Panda Python库(缩写为pd)如何用于执行一些描述性统计计算。从导入库开始:

    import pandas as pd

    先创建一个系列字典:

    d = {'Name':pd.Series(['Alfrick','Michael','Wendy','Paul','Dusan','George','Andreas',

    'Irene','Sagar','Simon','James','Rose']),

    'Years of Experience':pd.Series([5,9,1,4,3,4,7,9,6,8,3,1]),

    'Programming Language':pd.Series(['Python','JavaScript','PHP','C++','Java','Scala','React','Ruby','Angular','PHP','Python','JavaScript'])

    }

    再创建一个DataFrame。

    df = pd.DataFrame(d)

    输出表如下:

    Name Programming Language  Years of Experience

    0   Alfrick               Python                    5

    1   Michael           JavaScript                    9

    2     Wendy                  PHP                    1

    3      Paul                  C++                    4

    4     Dusan                 Java                    3

    5    George                Scala                    4

    6   Andreas                React                    7

    7     Irene                 Ruby                    9

    8     Sagar              Angular                    6

    9     Simon                  PHP                    8

    10    James               Python                    3

    11     Rose           JavaScript                    1

    下面是这个示例的全部代码:

    import pandas as pd

    #creating a dictionary of series

    d = {'Name':pd.Series(['Alfrick','Michael','Wendy','Paul','Dusan','George','Andreas',

    'Irene','Sagar','Simon','James','Rose']),

    'Years of Experience':pd.Series([5,9,1,4,3,4,7,9,6,8,3,1]),

    'Programming Language':pd.Series(['Python','JavaScript','PHP','C++','Java','Scala','React','Ruby','Angular','PHP','Python','JavaScript'])

    }

    #Create a DataFrame

    df = pd.DataFrame(d)

    print(df)

    3. Matplotlib

    Matplotlib也是SciPy核心软件包的一部分,遵循BSD许可协议。它是一个流行的Python科学库,用于生成简单而强大的可视化。风格类似 Matlab 的基于Python的图表绘图系统,它提供了一整套和 matlab 相似的命令 API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入 GUI 应用程序中。

    下面,让我们体会一下Matplotlib库是如何创建简单的条形图,从导入库开始:

    from matplotlib import pyplot as plt

    接着,生成x轴和y轴的值:

    x = [2, 4, 6, 8, 10]

    y = [10, 11, 6, 7, 4]

    接着调用绘制条形图的功能

    plt.bar(x,y)

    plt.show()

    生成的条形图如下:

    以下是此示例的完整代码:

    #importing Matplotlib Python library 

    from matplotlib import pyplot as plt

    #same as import matplotlib.pyplot as plt

    #generating values for x-axis 

    x = [2, 4, 6, 8, 10]

    #generating vaues for y-axis 

    y = [10, 11, 6, 7, 4]

    #calling function for plotting the bar chart

    plt.bar(x,y)

    #showing the plot

    plt.show()

    Python编程语言在数据处理和准备方面一直做得很好,但在复杂的科学数据分析和建模方面做得就不那么好了。用于数据科学的顶级Python框架有助于填补这一空白,它允许用户执行复杂的数学计算并创建对数据有意义的复杂模型。

    相关文章

      网友评论

        本文标题:盘点用于数据科学的三大顶级Python库(附代码)

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