Heim  >  Artikel  >  Backend-Entwicklung  >  Zusammenfassung häufig verwendeter Funktionen in der Numpy-Bibliothek: ein leistungsstarkes Tool zur Datenanalyse und -modellierung

Zusammenfassung häufig verwendeter Funktionen in der Numpy-Bibliothek: ein leistungsstarkes Tool zur Datenanalyse und -modellierung

WBOY
WBOYOriginal
2024-01-19 09:10:07967Durchsuche

Zusammenfassung häufig verwendeter Funktionen in der Numpy-Bibliothek: ein leistungsstarkes Tool zur Datenanalyse und -modellierung

Numpy ist eine der am häufigsten verwendeten Mathematikbibliotheken in Python, die viele der besten mathematischen Funktionen und Operationen integriert. Numpy wird häufig verwendet, unter anderem in den Bereichen Statistik, lineare Algebra, Bildverarbeitung, maschinelles Lernen, neuronale Netze. In Sachen Datenanalyse und Modellierung ist Numpy eines der unverzichtbaren Tools. In diesem Artikel werden häufig verwendete mathematische Funktionen in Numpy sowie Beispielcodes für die Verwendung dieser Funktionen zur Implementierung von Datenanalyse und -modellierung vorgestellt.

1. Erstellen Sie ein Array

Verwenden Sie die Funktion array(), um ein Array zu erstellen: array()函数可以创建一个数组,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr)

这会输出 [1 2 3 4 5],表示创建了一个一维数组。

我们还可以创建一个二维数组,代码示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr)

这会输出:

[[1 2 3]
 [4 5 6]]

表示创建了一个二维数组。

二、数组属性

使用Numpy中的ndimshapesize属性可以获取数组的维度、形状和元素个数,代码示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr.ndim)  # 输出 2,表示数组是二维的
print(arr.shape)  # 输出 (2, 3),表示数组有2行3列
print(arr.size)  # 输出 6,表示数组有6个元素

三、数组的运算

Numpy数组可以进行加、减、乘、除等运算。首先看一下给数组加一个标量的运算,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr + 2)  # 输出 [3 4 5 6 7]

表示数组中的每个元素都加上了2。

接下来是两个数组相加的运算,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
print(arr1 + arr2)  # 输出 [5 7 9]

表示两个数组中对应的元素相加。

Numpy还提供了一些特定的运算,例如:

  • 平方运算:使用power()函数,代码示例:

    import numpy as np
    
    arr = np.array([1, 2, 3, 4, 5])
    print(np.power(arr, 2))  # 输出 [ 1  4  9 16 25]

    这表示数组中的每个元素都平方了。

  • 开方运算:使用sqrt()函数,代码示例:

    import numpy as np
    
    arr = np.array([1, 4, 9, 16, 25])
    print(np.sqrt(arr))  # 输出 [1. 2. 3. 4. 5.]

    这表示数组中的每个元素都开方了。

  • 求和:使用sum()函数,代码示例:

    import numpy as np
    
    arr = np.array([1, 2, 3, 4, 5])
    print(np.sum(arr))  # 输出 15

    这表示数组中的所有元素求和。

  • 求最大值和最小值:使用max()min()函数,代码示例:

    import numpy as np
    
    arr = np.array([1, 2, 3, 4, 5])
    print(np.max(arr))  # 输出 5,表示数组中的最大值
    print(np.min(arr))  # 输出 1,表示数组中的最小值

四、数组的索引和切片

我们可以使用下标来访问数组中的元素,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr[0])  # 输出 1,表示数组中的第一个元素

我们还可以对数组进行切片操作,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr[1:4])  # 输出 [2 3 4],表示从数组中取出第2个到第4个元素

五、数组形状的变换

Numpy中提供了一些函数用于改变数组的形状,其中之一是reshape()函数。我们可以使用reshape()函数重塑数组的形状,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr.reshape(5, 1))

这会返回一个形状为(5, 1)的二维数组:

[[1]
 [2]
 [3]
 [4]
 [5]]

六、数组的合并与拆分

Numpy中提供了一些函数用于合并和拆分数组。

我们可以使用concatenate()函数将两个数组沿着某个维度合并,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
print(np.concatenate((arr1, arr2)))  # 输出 [1 2 3 4 5 6]

我们还可以使用vstack()hstack()函数将两个数组水平或垂直堆叠在一起,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 垂直堆叠
print(np.vstack((arr1, arr2)))  # 输出 [[1 2 3] [4 5 6]]

# 水平堆叠
print(np.hstack((arr1, arr2)))  # 输出 [1 2 3 4 5 6]

我们还可以使用split()函数将一个数组拆分成多个数组,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.split(arr, 5))  # 输出 [array([1]), array([2]), array([3]), array([4]), array([5])]

这会将数组拆分成5个一维数组,每个数组中只包含一个元素。

七、综合示例

现在,我们将使用Numpy中的函数实现一个简单的数据分析和建模的例子。

示例:假设你有100个学生的成绩,你想计算他们的平均成绩、最高成绩和最低成绩。

首先,我们用random()函数生成100个随机数,并使用mean()max()min()函数计算它们的平均值、最高值和最低值,代码示例:

import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
print("平均成绩:", np.mean(grades))
print("最高成绩:", np.max(grades))
print("最低成绩:", np.min(grades))

接下来,我们将使用histogram()函数生成一个成绩的直方图,代码示例:

import matplotlib.pyplot as plt
import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
hist, bins = np.histogram(grades, bins=10, range=(50, 100))

plt.hist(grades, bins=10, range=(50, 100))
plt.show()

最后,我们将使用percentile()

import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
print("90%的成绩高于:", np.percentile(grades, 90))

Dies gibt [1 2 3 4 5] aus und zeigt an, dass es sich um eine Eins handelt -dimensionales Array wurde erstellt.

Wir können auch ein zweidimensionales Array erstellen, Codebeispiel: 🎜rrreee🎜Dies wird ausgegeben: 🎜rrreee🎜Zeigt an, dass ein zweidimensionales Array erstellt wird. 🎜🎜2. Array-Attribute🎜🎜Verwenden Sie die Attribute ndim, shape und size in Numpy, um die Abmessungen, die Form und die Anzahl der Elemente zu erhalten das Array, Codebeispiel: 🎜rrreee🎜 3. Array-Operationen 🎜🎜Numpy-Arrays können Operationen wie Addition, Subtraktion, Multiplikation und Division ausführen. Schauen wir uns zunächst den Vorgang des Hinzufügens eines Skalars zu einem Array an. Das Codebeispiel: 🎜rrreee🎜 bedeutet, dass zu jedem Element im Array 2 hinzugefügt wird. 🎜🎜Der nächste Schritt ist das Hinzufügen zweier Arrays. Codebeispiel: 🎜rrreee🎜 bedeutet das Hinzufügen der entsprechenden Elemente in den beiden Arrays. 🎜🎜Numpy bietet auch einige spezifische Operationen, wie zum Beispiel: 🎜
  • 🎜Quadratische Operation: Verwenden Sie die Funktion power(), Codebeispiel: 🎜rrreee🎜Dies bedeutet, dass jedes Element in der Array Die Elemente sind quadriert. 🎜
  • 🎜Quadratwurzeloperation: Verwenden Sie die Funktion sqrt(), Codebeispiel: 🎜rrreee🎜Das bedeutet, dass jedes Element im Array quadriert wurde. 🎜
  • 🎜Summe: Verwenden Sie die Funktion sum(), Codebeispiel: 🎜rrreee🎜Das bedeutet, dass alle Elemente im Array summiert werden. 🎜
  • 🎜Finden Sie die Maximal- und Minimalwerte: Verwenden Sie die Funktionen max() und min(), Codebeispiel: 🎜rrreee
  • 🎜4. Indizierung und Aufteilung von Arrays🎜🎜Wir können Indizes verwenden, um auf Elemente im Array zuzugreifen, Codebeispiel: 🎜rrreee🎜Wir können das Array auch aufteilen, Codebeispiel: 🎜rrreee🎜5 🎜Numpy bietet einige Funktionen zum Ändern der Form von Arrays, darunter die Funktion reshape(). Wir können die Funktion reshape() verwenden, um das Array umzuformen: 🎜rrreee🎜Dies gibt ein zweidimensionales Array mit der Form (5, 1) zurück: 🎜rrreee🎜 6. Zusammenführen von Arrays und Aufteilung 🎜🎜Numpy bietet einige Funktionen zum Zusammenführen und Aufteilen von Arrays. 🎜🎜Wir können die Funktion concatenate() verwenden, um zwei Arrays entlang einer bestimmten Dimension zusammenzuführen, Codebeispiel: 🎜rrreee🎜Wir können auch vstack() und hstack() stapelt zwei Arrays horizontal oder vertikal, Codebeispiel: 🎜rrreee🎜Wir können auch die Funktion split() verwenden, um ein Array in mehrere Arrays aufzuteilen, Codebeispiel: 🎜rrreee🎜Dadurch wird das Array in 5 eindimensionale Arrays aufgeteilt, die jeweils nur ein Element enthalten. 🎜🎜7. Umfassendes Beispiel🎜🎜Jetzt werden wir Funktionen in Numpy verwenden, um ein einfaches Datenanalyse- und Modellierungsbeispiel zu implementieren. 🎜🎜Beispiel: Angenommen, Sie haben die Noten von 100 Schülern und möchten deren durchschnittliche, höchste und niedrigste Punktzahl berechnen. 🎜🎜Zuerst verwenden wir die Funktion random(), um 100 Zufallszahlen zu generieren, und verwenden mean(), max() und Die Funktion min() berechnet deren Durchschnitts-, Maximal- und Minimalwerte, Codebeispiel: 🎜rrreee🎜Als nächstes verwenden wir die Funktion histogram(), um ein Histogramm der Ergebnisse zu generieren, Code Beispiel: 🎜rrreee🎜Abschließend verwenden wir die Funktion percentile(), um das Perzentil der Note zu berechnen: 🎜rrreee🎜Die oben genannten Funktionen sind in diesem Artikel zusammengefasst können uns bei der Implementierung von Datenanalysen und Modellierungen helfen. Ich hoffe, dass diese Beispielcodes den Lesern helfen können, es besser zu verstehen. 🎜

Das obige ist der detaillierte Inhalt vonZusammenfassung häufig verwendeter Funktionen in der Numpy-Bibliothek: ein leistungsstarkes Tool zur Datenanalyse und -modellierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn