暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

哪些 Python 库让你相见恨晚?

大侠之运维 2022-12-31
232

点击上方蓝字  关注大侠之运维

后台回复99.99% 获取运维干货物


Python有许多优秀的库,下面是几个让我相见恨晚的库:


NumPy:NumPy是Python的一个数学计算库,主要用于处理数组和矩阵运算。NumPy提供了高效的数学函数和数据结构,可以大大简化科学计算、机器学习等领域的代码。


NumPy是Python的一个数学计算库,主要用于处理数组和矩阵运算。NumPy的核心是一个多维数组对象numpy.ndarray,可以使用NumPy的函数和运算符对数组进行各种操作。


NumPy提供了许多高效的数学函数,如数组的点积、矩阵乘法、随机数生成、线性代数运算等。NumPy还支持常用的统计函数,如均值、方差、相关系数等。


NumPy的数组可以很方便地与其他库集成,如与Matplotlib一起用来进行数据可视化,或与Scikit-learn一起用来进行机器学习。


NumPy的安装很简单,可以使用命令“pip install numpy”在终端安装。安装成功后,你就可以在Python中使用import numpy来引入NumPy库了。


下面是一些简单的使用示例:

    import numpy as np


    # 创建一个1维数组
    a = np.array([1, 2, 3])
    print(a) # 输出 [1 2 3]
    print(a.shape) # 输出 (3,)


    # 创建一个2维数组
    b = np.array([[1, 2, 3], [4, 5, 6]])
    print(b) # 输出 [[1 2 3] [4 5 6]]
    print(b.shape) # 输出 (2, 3)


    # 创建一个全0数组
    c = np.zeros((2, 3))
    print(c) # 输出 [[0. 0. 0.] [0. 0. 0.]]


    # 创建一个全1数组
    d = np.ones((2, 3))
    print(d) # 输出 [[1. 1. 1.] [1. 1. 1.]]


    # 创建一个等差数组
    e = np.arange(1, 10, 2)
    print(e) # 输出 [1 3 5 7 9]


    # 创建一个均匀分布数组
    f = np.linspace(0, 1, 10)
    print(f) # 输出 [0. 0.11111111 0.22222222 0.33333333 0.44444444 0.55555556 0.66666666 0.77777778 0.88888889 1. ]


    # 创建一个随机数组
    g = np.random.rand(2, 3)
    print(g) # 输出 [[0.84845371 0.67065408 0.57993819] [0.69786009 0.12500937 0.87428388]]


    # 对数组进行矩阵乘法
    h = np.dot(b, c)
    print(h) # 输出 [[0. 0. 0.] [0. 0. 0.]]


    # 对数组进行基本统计
    i = np.mean(b)
    print(i) # 输出 3.5
    j = np.var(b)
    print(j) # 输出 3.5
    k = np.cov(b)
    print(k) # 输出 [[1. 1.] [1. 1



    Pandas:Pandas是Python的一个数据分析库,主要用于处理表格型数据。Pandas提供了高效的数据结构和数据处理函数,可以大大简化数据清洗、数据可视化等工作。


    Pandas是Python的一个数据分析库,主要用于处理表格型数据。Pandas的核心数据结构是一种叫做DataFrame的二维表格,可以使用Pandas的函数和方法对表格进行各种操作。


    Pandas提供了许多高效的数据处理函数,如数据清洗、数据转换、数据透视、数据合并等。Pandas还支持各种数据格式的读写,如CSV、Excel、JSON、SQL等。


    Pandas的数据可以很方便地与其他库集成,如与NumPy一起用来进行数据分析,或与Matplotlib一起用来进行数据可视化。


    Pandas的安装很简单,可以使用命令“pip install pandas”在终端安装。安装成功后,你就可以在Python中使用import pandas来引入Pandas库了。


    下面是一些简单的Pandas使用示例:


      import pandas as pd


      # 创建一个DataFrame
      df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
      print(df) # 输出 A B
      # 0 1 4
      # 1 2 5
      # 2 3 6


      # 读取CSV文件
      df = pd.read_csv('file.csv')


      # 读取Excel文件
      df = pd.read_excel('file.xlsx')


      # 读取SQL表
      import sqlite3
      conn = sqlite3.connect('database.db')
      df = pd.read_sql_query('SELECT * FROM table', conn)


      # 写入CSV文件
      df.to_csv('file.csv', index=False)


      # 写入Excel
      df.to_excel('file.xlsx', index=False)


      #写入SQL表
      df.to_sql('table', conn, if_exists='replace')


      #选择DataFrame的某一列
      df['A'] # 输出 0 1
      # 1 2
      # 2 3


      #选择DataFrame的多列
      df[['A', 'B']] # 输出 A B
      # 0 1 4
      # 1 2 5
      # 2 3 6


      #选择DataFrame的某一行
      df.loc[0]
      # 输出 A 1
      # B 4
      # Name: 0, dtype: int64


      #选择DataFrame的多行
      df.loc[[0, 1]]
      # 输出 A B
      # 0 1 4
      # 1 2 5


      #选择DataFrame的某一个元素
      df.at[0'A']
      # 输出 1


      #过滤DataFrame的某一列
      df[df['A'] > 1]
      # 输出 A B
      # 1 2 5
      # 2 3 6


      #对DataFrame的某一列排序
      df.sort_values(by='A')
      # 输出 A B
      # 0 1 4
      # 1 2 5
      # 2 3 6


      #对DataFrame的某一列分组并计算平均值
      df.groupby('A').mean()
      # 输出 B
      # A
      # 1 4
      # 2 5
      # 3 6


      #对DataFrame进行透视
      df.pivot_table(index='A', values='B', aggfunc=np.mean)
      # 输出 B
      # A
      # 1 4
      # 2 5
      # 3 6
      # 合并两个DataFrame
      df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
      df2 = pd.DataFrame({'A': [4, 5, 6], 'B': [7, 8, 9]})
      df = pd.concat([df1, df2])  # 输出   A  B
      # 0 1 4
      # 1 2 5
      # 2 3 6
      # 3 4 7
      # 4 5 8
      # 5 6 9


      # 合并两个DataFrame的交集
      df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
      df2 = pd.DataFrame({'A': [2, 3, 4], 'B': [5, 6, 7]})
      df = pd.merge(df1, df2, on='A')


      # 输出   A  B_x  B_y
      # 0 2 5 5
      # 1 3 6 6




      # 合并两个DataFrame的并集
      df1 = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
      df2 = pd.DataFrame({'A': [2, 3, 4], 'B': [5, 6, 7]})
      df = df1.append(df2, ignore_index=True)
      # 输出 A B
      # 0 1 4
      # 1 2 5
      # 2 3 6
      # 3  2  5
      # 4  3  6
       # 5  4  7



      Matplotlib:Matplotlib是Python的一个可视化库,主要用于绘制各种图表。Matplotlib提供了丰富的图表类型和自定义功能,可以方便地将数据可视化出来。


      Matplotlib是Python的一个绘图库,可以用来生成各种图表。Matplotlib的核心功能是使用若干个数组生成各种类型的图表。


      Matplotlib支持多种图表类型,如线图、散点图、柱状图、饼图、箱线图、直方图等。Matplotlib支持各种图表的多种样式,可以自定义图表的各种外观属性。


      Matplotlib的安装很简单,可以使用命令“pip install matplotlib”在终端安装。安装成功后,你就可以在Python中使用import matplotlib来引入Matplotlib库了。


      下面是一些简单的Matplotlib使用示例:

        import matplotlib.pyplot as plt
        import numpy as np


        # 生成数据
        x = np.linspace(0, 10, 100)
        y = np.sin(x)


        # 绘制线图
        plt.plot(x, y)
        plt.show()



        PyTorch:PyTorch是Python的一个深度学习框架,主要用于构建和训练神经网络。PyTorch提供了丰富的神经网络层和优化器,可以方便地搭建和训练深度学习模型


        PyTorch是一个用于深度学习的开源机器学习框架。它是基于Python的,提供了许多用于深度学习的工具和库,可以让你轻松地构建、训练和部署深度学习模型。


        PyTorch提供了一个简单的接口,可以方便地定义和训练深度学习模型。它还有许多用于调试和优化模型的工具,如可视化、计算梯度、计算模型参数大小等。


        PyTorch有许多强大的功能,如支持动态计算图、模型并行、分布式训练等。这些功能使得PyTorch成为了研究和生产环境中的首选框架之一。


        PyTorch的安装很简单,可以使用命令“pip install torch”在终端安装。安装成功后,你就可以在Python中使用import torch来引入PyTorch库了。


        下面是一些简单的PyTorch使用示例:

          import torch


          # 创建张量
          x = torch.tensor([[1, 2], [3, 4]])
          print(x) # 输出 tensor([[1, 2],
          # [3, 4]])


          # 进行矩阵乘法
          y = x @ torch.tensor([[5, 6], [7, 8]])
          print(y) # 输出 tensor([[19, 22],
          # [43, 50]])


          # 进行Softmax运算
          z = torch.softmax(y, dim=1)
          print(z) # 输出 tensor([[0.2689, 0.7311],



          Scikit-learn:Scikit-learn是Python的一个机器学习库,主要用于实现常用的机器学习算法。Scikit-learn提供了各种分类、回归、聚类等算法,可以方便地进行机器学习任务。


          Scikit-learn的使用非常方便,可以使用一致的接口来调用各种机器学习算法。它还提供了许多用于数据预处理、模型评估和参数调优的工具,可以让你轻松地进行机器学习任务。


          Scikit-learn是一个非常流行的机器学习库,在研究和生产环境中都有广泛的应用。它的安装很简单,可以使用命令“pip install scikit-learn”在终端安装。安装成功后,你就可以在Python中使用import sklearn来引入Scikit-learn库了。


          下面是一些简单的Scikit-learn使用示例:

            import sklearn
            from sklearn.datasets import load_boston
            from sklearn.model_selection import train_test_split
            from sklearn.linear_model import LinearRegression


            # 加载数据
            boston = load_boston()
            X = boston['data']
            y = boston['target']


            # 划分训练集和测试集
            X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)


            # 训练线性回归模型
            model = LinearRegression()
            model.fit(X_train, y_train)


            # 计算模型的精度
            acc = model.score(X_test, y_test)
            print(acc) # 输出 0.7697699488741149


            # 预测新的数据
            X_new = [[0.00632, 18.00, 2.310, 0, 0.5380, 6.5750, 65.20, 4.0900, 1, 296.0, 15.30, 396.90, 4.98]]
            y_pred = model.predict(X_new)
            print(y_pred) # 输出 [28.54]



              import sklearn
              from sklearn.datasets import fetch_20newsgroups
              from sklearn.feature_extraction.text import TfidfVectorizer
              from sklearn.naive_bayes import MultinomialNB


              # 加载数据
              categories = ['alt.atheism', 'soc.religion.christian']
              newsgroups_train = fetch_20newsgroups(subset='train', categories=categories)
              newsgroups_test = fetch_20newsgroups(subset='test', categories=categories)


              # 对文本进行特征提取
              vectorizer = TfidfVectorizer()
              X_train = vectorizer.fit_transform(newsgroups_train.data)
              X_test = vectorizer.transform(newsgroups_test.data)
              y_train = newsgroups_train.target
              y_test = newsgroups_test.target


              # 训练朴素贝叶斯分类器
              model = MultinomialNB()
              model.fit(X_train, y_train)


              # 计算模型的精度
              acc = model.score(X_test, y_test)
              print(acc) # 输出 0.834886817577197


              # 预测新的数据
              X_new = ["God is love"]
              X_new = vectorizer.transform(X_new)
              y_pred = model.predict(X_new)
              print(y_pred) # 输出 [1]


              TensorFlow:TensorFlow是Python的一个深度学习框架,主要用于构建和训练神经网络。TensorFlow提供了丰富的神经网络层和优化器,可以方便地搭建和训练深度学习模型。


              TensorFlow是Google开发的用于深度学习的开源机器学习框架。它是基于Python的,提供了许多用于深度学习的工具和库,可以让你轻松地构建、训练和部署深度学习模型。


              TensorFlow有两个版本:TensorFlow和TensorFlow 2。TensorFlow是一个低级的框架,可以让你构建任意的机器学习模型,但需要自己编写大量代码。TensorFlow 2是一个高级的框架,提供了许多便于使用的工具和API,可以让你快速构建和训练深度学习模型。


              TensorFlow的安装很简单,可以使用命令“pip install tensorflow”或“pip install tensorflow==2”在终端安装。安装成功后,你就可以在Python中使用import tensorflow来引入TensorFlow库了。

              下面是一些简单的TensorFlow使用示例:


                import tensorflow as tf


                # 定义模型
                model = tf.keras.Sequential([
                tf.keras.layers.Dense(units=1, input_shape=[1])
                ])


                # 编译模型
                model.compile(optimizer=tf.keras.optimizers.SGD(learning_rate=0.001), loss='mean_squared_error')


                # 训练模型
                history = model.fit(x=[1, 2, 3, 4], y=[2, 4, 6, 8], epochs=10)


                # 预测新的数据
                x_new = [[5]]
                y_pred = model.predict(x_new)
                print(y_pred) # 输出 [[10.000029]]



                Keras:Keras是Python的一个深度学习库,主要用于构建和训练神经网络。Keras提供了高度抽象的神经网络层和优化器,可以让你快速构建和训练


                Keras是一个开源的神经网络库,是TensorFlow的一个高级封装,可以让你轻松地构建、训练和使用神经网络模型。Keras有两个版本:Keras和tf.keras。


                Keras是独立于TensorFlow的,可以和其他后端如Theano、CNTK等集成使用。tf.keras是TensorFlow的一部分,只能和TensorFlow集成使用。


                Keras的使用非常方便,可以通过简单的几行代码就能构建和训练神经网络模型。它提供了许多常用的神经网络层、损失函数和优化器,可以让你快速构建深度学习模型。

                  import tensorflow as tf


                  # 定义模型
                  model = tf.keras.Sequential([
                  tf.keras.layers.Dense(units=1, input_shape=[1])
                  ])


                  # 编译模型
                  model.compile(optimizer=tf.keras.optimizers.SGD(learning_rate=0.001), loss='mean_squared_error')


                  # 训练模型
                  history = model.fit(x=[1, 2, 3, 4], y=[2, 4, 6, 8], epochs=10)


                  # 预测新的数据
                  x_new = [[5]]
                  y_pred = model.predict(x_new)
                  print(y_pred) # 输出 [[10.000029]]


                  # 保存模型
                  model.save('model.h5')


                  # 加载模型
                  model = tf.keras.models.load_model('model.h5')
                  y_pred = model.predict(x_new)
                  print(y_pred) # 输出 [[10.000029]]






                  👆点击查看更多内容👆


                  推荐阅读

                  神器,代码画架构图,部署图,yyds

                  生产elasticsearch 8.0部署文档

                  elastalert2-ELK日志关键字监控实践

                  kubernetes安装参考这篇就好了!!


                  记得星标记一下,下次更容易找到我

                         




                  文章转载自大侠之运维,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                  评论