π Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ Python Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΡ . Π§Π°ΡΡΡ 24: ΠΡΠ½ΠΎΠ²Ρ ΡΠ°Π±ΠΎΡΡ Ρ NumPy
ΠΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈ Π½Π°ΡΡΠΈΠΌ Π΄Π΅Π»Π°ΡΡ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΠ»ΡΡΡΡ Π΄Π»Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. Π ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ β 10 ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΡ ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ΡΠΊΠΈΡ Π·Π°Π΄Π°Ρ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ.
NumPy β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΡ ΠΈ Π½Π°ΡΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ Π² Python: ΠΎΠ½Π° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ ΠΈ ΠΌΠ°ΡΡΠΈΡΠ°ΠΌΠΈ ΠΈ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ Π²ΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² Π΄Π°Π½Π½ΡΡ . ΠΠΎΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ NumPy ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π΄ΡΡΠ³ΠΈΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ β Pandas, SciPy, Matplotlib, Scikit-learn ΠΈ TensorFlow.
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ
NumPy ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ Π½ΡΠΆΠ½Π° Π±ΡΡΡΡΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΠΎΠ»ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π΄Π°Π½Π½ΡΡ :
- ΠΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΠ΅ ΠΈ Π½Π°ΡΡΠ½ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π² ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠΈΠ·ΠΈΠΊΠΈ, ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ, Π±ΠΈΠΎΠ»ΠΎΠ³ΠΈΠΈ, Ρ ΠΈΠΌΠΈΠΈ ΠΈ Ρ.Π΄.
- ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π·Π²ΡΠΊΠ° β ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΈΠ»ΡΡΡΠΎΠ², ΡΠΆΠ°ΡΠΈΠ΅ ΠΈ Ρ.ΠΏ.
- ΠΠ°ΡΠΈΠ½Π½ΠΎΠ΅ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, ΠΈΡΠΊΡΡΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅Π»Π»Π΅ΠΊΡ ΠΈ Data Science β ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ· Π΄Π°Π½Π½ΡΡ .
- ΠΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠ΅ Π·ΡΠ΅Π½ΠΈΠ΅ β ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠ² ΠΈ ΡΠ΅Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
- Π€ΠΈΠ½Π°Π½ΡΠΎΠ²ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ β ΡΠ°ΡΡΠ΅Ρ Π΄ΠΎΡ ΠΎΠ΄Π½ΠΎΡΡΠΈ Π°ΠΊΡΠΈΠ²ΠΎΠ² ΠΈ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΈΠΉ, ΡΠΈΡΠΊ-ΠΌΠ΅Π½Π΅Π΄ΠΆΠΌΠ΅Π½Ρ, ΠΎΡΠ΅Π½ΠΊΠ° Π΄ΠΈΡΠΊΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ ΠΈ Ρ.Π΄.
- ΠΠ΅ΠΎΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ Π³Π΅ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ β ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π³Π΅ΠΎΠ΄Π°Π½Π½ΡΡ ΠΈ Π°Π½Π°Π»ΠΈΠ· Π³ΡΠ°ΡΠΈΠΊΠΎΠ².
ΠΠ°ΡΡΠΈΠ² ndarray
NumPy ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΈΠ· ΡΠΏΠΈΡΠΊΠΎΠ², ΠΊΠΎΡΡΠ΅ΠΆΠ΅ΠΉ ΠΈ ΡΠ»ΠΎΠ²Π°ΡΠ΅ΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°Ρ ΡΠ΅Π»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ ΠΈ ΠΌΠ°ΡΡΠΈΡΠ°ΠΌΠΈ. ΠΡΠ΅, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ (ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ, ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΠΌΡ, Π²ΡΠ΅ Π²ΠΈΠ΄Ρ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°, Π»ΡΠ±ΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈ Ρ.ΠΏ.), NumPy Π΄Π΅Π»Π°Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ.
ΠΠ°ΡΡΠΈΠ²Ρ NumPy ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ Python: ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΊΡΠΈΡΠΈΡΠ½Π° ΡΠΊΠΎΡΠΎΡΡΡ, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ Π½Π° C/C++. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, NumPy ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ndarray (n-ΡΠ°Π·ΠΌΠ΅ΡΠ½ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ). Π‘ΡΠ°Π²Π½ΠΈΠΌ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ Python ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° NumPy Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π΄Π²ΡΡ ΠΌΠ°ΡΡΠΈΡ 1000 Ρ 1000:
import numpy as np import time # ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ Π΄Π²Π΅ ΠΌΠ°ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 1000x1000 ΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΎΡ 0 Π΄ΠΎ 9 A = np.random.randint(0, 10, size=(1000, 1000)) B = np.random.randint(0, 10, size=(1000, 1000)) # Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ Python start_time = time.time() C = [[A[i][j] + B[i][j] for j in range(len(A[0]))] for i in range(len(A))] end_time = time.time() # Π‘Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ NumPy start_time_np = time.time() D = A + B end_time_np = time.time() # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΈ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ print(f"ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Python ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: {end_time - start_time} ΡΠ΅ΠΊ") print(f"ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ NumPy ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: {end_time_np - start_time_np} ΡΠ΅ΠΊ") # Π‘ΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ print("Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ:", np.array_equal(C, D))
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Python ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: 1.432081937789917 ΡΠ΅ΠΊ ΠΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ NumPy ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΡ: 0.004000186920166016 ΡΠ΅ΠΊ Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ: True
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ndarray:
- ΠΠ΄Π½ΠΎΡΠΎΠ΄Π½ΠΎΡΡΡ. ΠΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΎΡΠ½ΠΎΡΡΡΡΡ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ndarray Π±ΡΡΡΡΡΠΌΠΈ ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ½ΡΠΌΠΈ.
- ΠΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΠΎΡΡΡ. ΠΠ°ΡΡΠΈΠ²Ρ NumPy ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΉ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ β ΡΠ°Π±Π»ΠΈΡΡ, ΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ β ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠ΅ΡΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ β Π²ΠΈΠ΄Π΅ΠΎ.
- Π€ΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ. Π Π°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅Π»ΡΠ·Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π½ΡΠΆΠ΅Π½ ΠΌΠ°ΡΡΠΈΠ² Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ.
- ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ. ΠΠ°ΡΡΠΈΠ²Ρ NumPy ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π°Π΄ Π²ΡΠ΅ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌΠΈ, ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ Python.
- Π£Π΄ΠΎΠ±Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ. NumPy ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠΈΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ Π²ΡΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΉ Π½Π°Π΄ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ β ΠΎΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΈ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΠΈ Π΄ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΠΌΡ.
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² NumPy
NumPy ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², Π²ΠΎΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° a = np.array([1, 2, 3, 4, 5]) print(a) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° ΡΠΏΠΈΡΠΊΠΎΠ² b = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(b) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ c = np.arange(0, 10, 2) # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ 0 Π΄ΠΎ 10 Ρ ΡΠ°Π³ΠΎΠΌ 2 print(c) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ d = np.linspace(0, 1, 5) # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 5 ΡΠ°Π²Π½ΠΎΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡ 0 Π΄ΠΎ 1 print(d) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ e = np.random.rand(3, 3) # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 3x3 ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ print(e) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· Π½ΡΠ»Π΅ΠΉ f = np.zeros((2, 3)) # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· Π½ΡΠ»Π΅ΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 2x3 print(f) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· Π΅Π΄ΠΈΠ½ΠΈΡ g = np.ones((3, 3)) # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· Π΅Π΄ΠΈΠ½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3x3 print(g)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[1 2 3 4 5] [[1 2 3] [4 5 6] [7 8 9]] [0 2 4 6 8] [0. 0.25 0.5 0.75 1. ] [[0.66777626 0.88439902 0.22572609] [0.09556062 0.40293789 0.58901436] [0.33380993 0.20922535 0.42657995]] [[0. 0. 0.] [0. 0. 0.]] [[1. 1. 1.] [1. 1. 1.] [1. 1. 1.]]
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ
ΠΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΠΌ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² arr = np.array([[1, 2], [3, 4], [5, 6]]) # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ² Π½Π° ΡΠΊΡΠ°Π½ print(arr) # ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° print(arr.shape) # ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° print(arr[0, 1]) # ΠΡΠ²Π΅Π΄Π΅Ρ 2 print(arr[2, 0]) # ΠΡΠ²Π΅Π΄Π΅Ρ 5 # ΠΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° arr[0, 1] = 7 arr[1, 1] = 8 arr[2, 1] = 9 print(arr) # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΡΡΠΎΠΊΡ print(arr[1]) # ΠΡΠ²Π΅Π΄Π΅Ρ [3 8] # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΡΠΎΠ»Π±Π΅Ρ print(arr[:, 0]) # ΠΡΠ²Π΅Π΄Π΅Ρ [1 3 5] # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΡΠ΅Π· print(arr[:2, 1]) # ΠΡΠ²Π΅Π΄Π΅Ρ [7 8]
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[[1 2] [3 4] [5 6]] (3, 2) 2 5 [[1 7] [3 8] [5 9]] [3 8] [1 3 5] [7 8]
ΠΠ΅ΡΠΎΠ΄Ρ NumPy ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Π½Π°Π΄ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π²ΡΠ΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½ΠΈΡ :
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π΄Π²Π° ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 6x6 ΡΠΎ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΎΡ 0 Π΄ΠΎ 9 a = np.random.randint(1, 10, size=(6, 6)) b = np.random.randint(1, 10, size=(6, 6)) # ΠΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ²Ρ Π½Π° ΡΠΊΡΠ°Π½ print("ΠΠ°ΡΡΠΈΠ² a:\n", a) print("ΠΠ°ΡΡΠΈΠ² b:\n", b) # ΠΡΡΠΈΡΠ°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ²Ρ d = a - b print("Π Π°Π·Π½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² a ΠΈ b:\n", d) # Π£ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² m = np.dot(a, b) print("ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² a ΠΈ b:\n", m) # ΠΠ΅Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ) # ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ b b_inv = np.linalg.inv(b) # Π£ΠΌΠ½ΠΎΠΆΠ°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΡΡ a Π½Π° ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ b_inv result = np.dot(a, b_inv) print("Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a Π½Π° b:\n", result) # Π’ΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΡΠ΅ΠΌ ΠΌΠ°ΡΡΠΈΠ²Ρ h = np.transpose(a) i = np.transpose(b) print("ΠΠ°ΡΡΠΈΠ² a ΠΏΠΎΡΠ»Π΅ ΡΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ:\n", h) print("ΠΠ°ΡΡΠΈΠ² b ΠΏΠΎΡΠ»Π΅ ΡΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ:\n", i) # ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² std_a = np.std(a) # Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a median_b = np.median(b) # ΠΠ΅Π΄ΠΈΠ°Π½Π° ΠΌΠ°ΡΡΠΈΠ²Π° b variance_a = np.var(a) # ΠΠΈΡΠΏΠ΅ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a min_b = np.min(b) # ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° b max_a = np.max(a) # ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a sum_b = np.sum(b) # Π‘ΡΠΌΠΌΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° b product_a = np.product(a, dtype=np.uint64) # ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° a prod_b = np.prod(b, dtype=np.uint64) # ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΠΎΠ΄ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² print("Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a:", std_a) print("ΠΠ΅Π΄ΠΈΠ°Π½Π° ΠΌΠ°ΡΡΠΈΠ²Π° b:", median_b) print("ΠΠΈΡΠΏΠ΅ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a:", variance_a) print("ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° b:", min_b) print("ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a:", max_a) print("Π‘ΡΠΌΠΌΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° b:", sum_b) print("ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° a:", product_a) print("ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° b:", prod_b)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ°ΡΡΠΈΠ² a: [[2 2 3 9 8 2] [4 7 6 6 1 5] [6 8 5 7 6 7] [5 3 2 6 5 5] [8 5 3 7 3 3] [5 8 2 6 1 1]] ΠΠ°ΡΡΠΈΠ² b: [[4 1 6 4 9 4] [6 8 2 2 3 4] [2 4 9 9 7 6] [9 4 2 9 2 3] [5 8 4 7 9 8] [2 7 4 6 9 9]] Π Π°Π·Π½ΠΎΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² a ΠΈ b: [[-2 1 -3 5 -1 -2] [-2 -1 4 4 -2 1] [ 4 4 -4 -2 -1 1] [-4 -1 0 -3 3 2] [ 3 -3 -1 0 -6 -5] [ 3 1 -2 0 -8 -8]] ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² a ΠΈ b: [[151 144 101 188 153 143] [139 151 128 175 165 151] [189 215 163 232 244 218] [131 136 106 163 170 147] [152 133 123 171 176 142] [133 116 84 121 113 99]] Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a Π½Π° b: [[-5.55598908e-01 -1.94654702e+00 4.39719079e-01 -6.62504877e-01 5.72922357e+00 -3.83066719e+00] [-2.90479906e-01 1.16172454e+00 8.37690207e-01 3.86071011e-01 -1.83749512e+00 1.11451424e+00] [ 4.77955521e-03 6.06808428e-01 2.70971518e-01 2.91162700e-01 -3.96898166e-01 5.81057355e-01] [ 3.19791260e-01 -5.26238783e-02 -2.67752634e-01 6.75039017e-01 -7.08788529e-01 1.02033750e+00] [ 5.16972298e-02 2.57315646e-01 1.34998049e-01 5.37065938e-01 4.00897386e-01 -4.29379633e-01] [-1.07915529e+00 -1.51531409e-01 7.47073742e-01 -5.26092470e-01 3.97107881e+00 -3.19444986e+00]] ΠΠ°ΡΡΠΈΠ² a ΠΏΠΎΡΠ»Π΅ ΡΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ: [[2 4 6 5 8 5] [2 7 8 3 5 8] [3 6 5 2 3 2] [9 6 7 6 7 6] [8 1 6 5 3 1] [2 5 7 5 3 1]] ΠΠ°ΡΡΠΈΠ² b ΠΏΠΎΡΠ»Π΅ ΡΡΠ°Π½ΡΠΏΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ: [[4 6 2 9 5 2] [1 8 4 4 8 7] [6 2 9 2 4 4] [4 2 9 9 7 6] [9 3 7 2 9 9] [4 4 6 3 8 9]] Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a: 2.27438772116208 ΠΠ΅Π΄ΠΈΠ°Π½Π° ΠΌΠ°ΡΡΠΈΠ²Π° b: 5.5 ΠΠΈΡΠΏΠ΅ΡΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° a: 5.172839506172839 ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° b: 1 ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° a: 9 Π‘ΡΠΌΠΌΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° b: 197 ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° a: 18210394348833472512 ΠΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° b: 14758432146536267776
ΠΠΎΠ»Π΅Π·Π½ΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ NumPy
reshape() β ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ :
import numpy as np # ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3x4 arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]) # ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ reshape() Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° 2x6 new_arr = arr.reshape(2, 6) print("ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:") print(arr) print("ΠΠ°ΡΡΠΈΠ² ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΠΌΡ:") print(new_arr)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²: [[ 1 2 3 4] [ 5 6 7 8] [ 9 10 11 12]] ΠΠ°ΡΡΠΈΠ² ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠΎΡΠΌΡ: [[ 1 2 3 4 5 6] [ 7 8 9 10 11 12]]
concatenate() β ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ ΠΈΠ»ΠΈ ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ:
import numpy as np a = np.array([[1, 2], [3, 4]]) b = np.array([[5, 6], [7, 8]]) c = np.array([[9, 10], [11, 12]]) #ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΡΠΈ (ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ) d = np.concatenate((a, b, c), axis=1) print(d) #ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΠΎΡΠΈ (ΠΏΠΎ ΡΡΠΎΠ»Π±ΡΠ°ΠΌ) e = np.concatenate((a, b, c), axis=0) print(e)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[[ 1 2 5 6 9 10] [ 3 4 7 8 11 12]] [[ 1 2] [ 3 4] [ 5 6] [ 7 8] [ 9 10] [11 12]]
flatten() β ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π² ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ:
import numpy as np a = np.array([[1, 2, 9, 8], [7, 5, 3, 4], [2, 1, 5, 6], [4, 8, 7, 8]]) print(a.flatten())
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ;
[1 2 9 8 7 5 3 4 2 1 5 6 4 8 7 8]
argmax() ΠΈ argmin() β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ (ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ) ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°:
import numpy as np a = np.array([[4, 2, 9, 89], [17, 5, 3, 14], [25, -5, 5, 6], [4, 18, 17, 8]]) print(f"ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°: {np.argmax(a)}") print(f"ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°: {np.argmin(a)}")
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°: 3 ΠΠ½Π΄Π΅ΠΊΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°: 9
where() β Π²ΡΠ±ΠΈΡΠ°Π΅Ρ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΡΠ΄ΠΎΠ²Π»Π΅ΡΠ²ΠΎΡΡΡΡΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΡ:
import numpy as np arr = np.array([[14, 22, 91, 19], [11, 51, 32, 14], [25, 22, 50, 60], [14, 18, 17, 28]]) # ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· ΡΠ΅ΡΠ½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ, Π·Π°ΠΌΠ΅Π½ΡΡ Π½Π΅ΡΠ΅ΡΠ½ΡΠ΅ Π½Π° ΡΠΈΡΡΡ 5 new_arr = np.where(arr % 2 == 0, arr, 5) print(new_arr)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[[14 22 5 5] [ 5 5 32 14] [ 5 22 50 60] [14 18 5 28]]
Π NumPy Π΅ΡΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΠΎΠ΄, ΠΏΠΎΡ ΠΎΠΆΠΈΠΉ Π½Π° where() β argwhere(). ΠΠ½ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°ΡΡΠΈΠ²Π°:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° arr = np.random.randint(0, 5, size=(5, 5)) print("ΠΠ°ΡΡΠΈΠ²:") print(arr) result = np.argwhere(arr != 3) print(result)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ°ΡΡΠΈΠ²: [[4 3 0 1 1] [0 0 0 4 1] [1 1 2 0 0] [3 0 0 3 1] [2 2 4 3 0]] [[0 0] [0 2] [0 3] [0 4] [1 0] [1 1] [1 2] [1 3] [1 4] [2 0] [2 1] [2 2] [2 3] [2 4] [3 1] [3 2] [3 4] [4 0] [4 1] [4 2] [4 4]]
nonzero() β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π½Π΅Π½ΡΠ»Π΅Π²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° arr = np.random.randint(0, 2, size=(5, 5)) print("ΠΠ°ΡΡΠΈΠ²:") print(arr) result = np.nonzero(arr) print(result)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ°ΡΡΠΈΠ²: [[0 1 0 0 0] [1 1 0 1 0] [1 0 1 0 1] [1 0 1 1 0] [0 1 0 1 0]] (array([0, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4], dtype=int32), array([1, 0, 1, 3, 0, 2, 4, 0, 2, 3, 1, 3], dtype=int32))
unique() β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ:
import numpy as np # ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 500x500 arr = np.random.randint(low=0, high=10, size=(500, 500)) # Π²ΡΠ²ΠΎΠ΄ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ²Π° unique_values, counts = np.unique(arr, return_counts=True) print(arr) print(unique_values) print(f"ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°: {counts}")
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[[1 8 1 ... 6 3 0] [4 5 5 ... 6 4 9] [3 1 4 ... 2 5 8] ... [3 5 3 ... 0 7 7] [0 4 0 ... 8 5 4] [6 3 5 ... 0 2 2]] [0 1 2 3 4 5 6 7 8 9] ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π°: [25119 25042 25089 25186 24868 24888 24926 24941 24854 25087]
sort() β ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ / ΡΠ±ΡΠ²Π°Π½ΠΈΡ:
import numpy as np arr = np.array([3, 12, 4, 1, 5, 9, 2, 6, 15, -4, 10, -2, 0, 11, 7]) # ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ sorted_asc = np.sort(arr) # ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ sorted_des = np.sort(arr)[::-1] print(sorted_asc) print(sorted_des)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
[-4 -2 0 1 2 3 4 5 6 7 9 10 11 12 15] [15 12 11 10 9 7 6 5 4 3 2 1 0 -2 -4]
diag() β Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ ΠΌΠ°ΡΡΠΈΡΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠ΅ΡΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΡΡ ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° arr = np.arange(16).reshape((4, 4)) print("ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:") print(arr) # ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ print("\nΠΠ»Π°Π²Π½Π°Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π°:") print(np.diag(arr)) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΡΡ ΠΈΠ· ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² diag_matrix = np.diag([1, 2, 3, 4, 5]) print("\nΠΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΡΠΈΡΠ°:") print(diag_matrix)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²: [[ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15]] ΠΠ»Π°Π²Π½Π°Ρ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π°: [ 0 5 10 15] ΠΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΡΠΈΡΠ°: [[1 0 0 0 0] [0 2 0 0 0] [0 0 3 0 0] [0 0 0 4 0] [0 0 0 0 5]]
trace() Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ ΡΠ»Π΅Π΄ ΠΌΠ°ΡΡΠΈΡΡ, ΡΠΎ Π΅ΡΡΡ ΡΡΠΌΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π° Π΅Π΅ Π³Π»Π°Π²Π½ΠΎΠΉ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ:
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° arr = np.random.randint(0, 10, size=(20, 20)) print("ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:") print(arr) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄Π° ΠΌΠ°ΡΡΠΈΡΡ trace = np.trace(arr) print("Π‘Π»Π΅Π΄ ΠΌΠ°ΡΡΠΈΡΡ:") print(trace)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²: [[0 2 9 3 8 9 6 5 4 8 2 1 9 6 0 5 9 1 4 8] [8 1 3 1 5 8 9 4 6 7 7 3 6 5 7 3 4 6 4 7] [4 4 9 2 8 3 1 0 9 1 7 6 6 3 5 5 3 8 5 2] [7 9 5 9 5 5 5 4 2 2 8 5 8 8 8 1 6 9 9 0] [5 3 8 2 3 2 6 7 8 5 2 9 7 4 7 8 3 2 8 0] [7 1 4 8 7 0 5 6 1 5 7 2 1 5 3 7 9 3 0 1] [9 9 1 5 3 2 9 5 4 3 2 1 9 5 5 3 5 1 0 7] [3 8 6 0 7 0 8 8 8 7 4 6 7 3 8 0 0 7 5 8] [3 5 5 7 6 1 0 6 3 8 0 9 7 1 3 4 1 8 3 4] [1 9 4 3 6 3 2 4 6 2 4 3 8 5 8 5 4 5 4 8] [5 4 2 0 9 8 1 3 8 0 9 1 6 9 4 2 0 8 3 4] [6 4 1 4 9 8 6 0 7 7 0 1 9 3 5 3 8 7 9 2] [9 4 9 2 5 2 8 6 0 9 0 6 4 1 7 0 6 4 2 8] [2 6 7 2 5 1 7 0 9 9 4 8 2 1 8 6 8 9 3 0] [1 8 3 8 2 6 3 0 0 0 4 0 1 4 2 4 3 2 8 9] [3 9 2 6 6 7 8 4 3 6 6 0 1 6 2 8 8 6 8 7] [6 2 1 3 0 1 6 5 7 6 8 6 4 5 3 9 3 1 3 2] [6 2 9 4 4 8 1 3 1 8 1 2 4 9 8 2 3 9 7 8] [1 2 8 7 4 6 9 5 4 9 3 9 2 8 3 8 1 8 2 3] [9 8 6 2 5 9 9 6 3 0 6 5 6 5 7 7 7 9 4 7]] Π‘Π»Π΅Π΄ ΠΌΠ°ΡΡΠΈΡΡ: 90
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ NumPy
ΠΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΎΠ±ΡΠ΅ΠΌΠ½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅ΠΌ Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ².
ΠΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π±ΡΡΡΡΠ°Ρ Π·Π°Π³ΡΡΠ·ΠΊΠ° Π΄Π°Π½Π½ΡΡ
NumPy ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ². Π’Π°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈ Π·Π°Π³ΡΡΠ·ΠΈΡΡ Π΅Π³ΠΎ ΠΈΠ· ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° (txt, csv, json):
import numpy as np data = np.array([[1, 2, 3], [4, 5, 6]]) np.savetxt("data.txt", data, delimiter=",") data = np.loadtxt("data.txt", delimiter=",", dtype=np.int32) print(data)
ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ°ΠΌΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΡΡΠΎΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ NumPy β npy ΠΈ npz: ΠΎΠ½ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΡΡ Π΄ΠΎ 50% ΠΌΠ΅ΡΡΠ° Π½Π° Π΄ΠΈΡΠΊΠ΅ ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ Π»ΡΠ±ΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ.
Π’Π°ΠΊ ΡΠΎΡ ΡΠ°Π½ΡΡΡ ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡ npy ΡΠ°ΠΉΠ»Ρ:
import numpy as np data = np.array([[1, 2, 3], [4, 5, 6]]) np.save("data.npy", data) loaded_data = np.load("data.npy") print(loaded_data)
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ NumPy ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΠΈΠΊΡΠ΅Π»Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΡ ΠΊΡΠ°ΡΠ½ΠΎΠ³ΠΎ, Π·Π΅Π»Π΅Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΈΠ½Π΅Π³ΠΎ ΡΠ²Π΅ΡΠΎΠ² (RGB). Π ΡΠ΅ΡΡΡΠ΅Ρ ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ Ρ Π°Π»ΡΡΠ°-ΠΊΠ°Π½Π°Π»ΠΎΠΌ (RGBA). ΠΠΎΠ·ΡΠΌΠ΅ΠΌ Π»ΡΠ±ΠΎΠ΅ ΡΠ²Π΅ΡΠ½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅:
Π ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Π΅Π³ΠΎ:
import numpy as np from PIL import Image # Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ img = np.array(Image.open('image.jpeg')) # ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ img_gray = np.mean(img, axis=2).astype(np.uint8) # ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠ½ΡΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² img_R = img.copy() img_R[:, :, (1, 2)] = 0 img_G = img.copy() img_G[:, :, (0, 2)] = 0 img_B = img.copy() img_B[:, :, (0, 1)] = 0 # ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ img_1 = Image.fromarray(img_gray) img_2 = Image.fromarray(img_R) img_3 = Image.fromarray(img_G) img_4 = Image.fromarray(img_B) result = Image.new("RGB", (img.shape[1]*2, img.shape[0]*2)) result.paste(img_1, (0,0)) result.paste(img_2, (img.shape[1],0)) result.paste(img_3, (0,img.shape[0])) result.paste(img_4, (img.shape[1],img.shape[0])) result.save("result.png", format="PNG")
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΌΠ°ΡΡΠΈΠ² NumPy, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ:
- ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΅Π³ΠΎ Π² ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»ΠΎΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ np.mean().
- ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π»ΡΠ½ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΊΡΠ°ΡΠ½ΡΠΉ, Π·Π΅Π»Π΅Π½ΡΠΉ ΠΈ ΡΠΈΠ½ΠΈΠΉ ΡΠ²Π΅ΡΠΎΠ²ΡΠ΅ ΠΊΠ°Π½Π°Π»Ρ.
- Π‘ΠΎΠ·Π΄Π°Π΅Ρ ΡΠ΅ΡΡΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Image.fromarray() ΠΈΠ· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² NumPy ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΈΡ
Π² ΠΎΠ΄Π½ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ΅ΡΠΎΠ΄Π° paste().
Π ΠΈΡΠΎΠ³Π΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ°Π·Π½ΠΎΡΠ²Π΅ΡΠ½ΡΠΉ ΠΊΠΎΠ»Π»Π°ΠΆ, Π³Π΄Π΅ ΠΏΠ΅ΡΠ²Π°Ρ ΡΠ΅ΡΠ²Π΅ΡΡΡ β ΡΠ΅ΡΠ½ΠΎ-Π±Π΅Π»Π°Ρ, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠΈ β ΠΊΡΠ°ΡΠ½Π°Ρ, Π·Π΅Π»Π΅Π½Π°Ρ ΠΈ ΡΠΈΠ½ΡΡ:
ΠΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ
NumPy (Π²ΠΌΠ΅ΡΡΠ΅ Ρ Matplotlib) ΠΎΡΠ»ΠΈΡΠ½ΠΎ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΡ Π΄Π°Π½Π½ΡΡ . ΠΠ° Yahoo Finance ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π»ΡΠ±ΡΡ Π°ΠΊΡΠΈΠΉ ΠΈ ΠΊΡΠΈΠΏΡΠΎΠ²Π°Π»ΡΡ. Π‘ΠΊΠ°ΡΠ°Π΅ΠΌ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, csv ΡΠ°ΠΉΠ» Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Litecoin Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ 5 Π»Π΅Ρ. ΠΠΎΠ΄ Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅Π½ Π·Π°ΠΊΡΡΡΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
import numpy as np import matplotlib.pyplot as plt # ΠΠ°Π³ΡΡΠ·ΠΊΠ° Π΄Π°Π½Π½ΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π° data = np.genfromtxt('litecoin.csv', delimiter=',', skip_header=1, usecols=(1, 2, 3, 4, 5, 6)) # Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ Π½Π° ΡΡΠΎΠ»Π±ΡΡ open_prices, high_prices, low_prices, close_prices, adj_close_prices, volumes = data.T # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° ΡΠ΅Π½Ρ Π·Π°ΠΊΡΡΡΠΈΡ plt.plot(close_prices) # ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΎΡΠ΅ΠΉ plt.xlabel('ΠΠ΅ΡΡΡΡ') plt.ylabel('Π¦Π΅Π½Π° Π·Π°ΠΊΡΡΡΠΈΡ') plt.title('Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ Litecoin Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄ Ρ ΠΈΡΠ»Ρ 2018 ΠΏΠΎ ΠΈΡΠ½Ρ 2023') # Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π½Π° ΠΎΡΠΈ x n = len(close_prices) step = n // 10 plt.xticks(range(0, n, step)) # ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π³ΡΠ°ΡΠΈΠΊΠ° plt.show()
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΡΠ°ΠΊΡΠΈΠΊΠ°
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 1
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ:
- ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅Ρ NumPy-ΠΌΠ°ΡΡΠΈΠ² 10Ρ 10, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΎΡ 1.01 Π΄ΠΎ 9.99.
- ΠΡΠ²ΠΎΠ΄ΠΈΡ Π³Π»Π°Π²Π½ΡΡ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ.
- ΠΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π΅ β ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΌΠ΅Π΄ΠΈΠ°Π½Ρ, Π΄ΠΈΡΠΏΠ΅ΡΡΠΈΡ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠ°ΡΡΠΈΠ²: [[5.72 2.78 4.21 5.61 1.26 9.61 2.87 7.08 4.86 9.71] [6.37 4.92 8.99 4.77 2.5 4.91 3.64 5.54 6.35 1.04] [1.63 4.35 8.56 4.86 2.32 1.77 9.76 4.52 5.09 4.05] [2.55 3.3 6.57 7.27 4.08 2.77 6.53 5.04 4.69 2.99] [7.65 5.2 7.27 5.48 3.38 1.9 1.68 4.87 4.81 9.96] [3.65 5.97 2.92 2.13 3.58 6.24 4.53 9.06 3.64 4.35] [4.95 1.84 2.98 1.98 1.47 7.65 2.09 3.01 2.2 2.71] [9.44 3.26 6.6 6.44 6.45 5.9 2.36 3.96 7.21 9.18] [3.23 3.12 7.19 6.69 6.9 8.4 7.67 3.71 1.93 6.07] [6.48 2.57 5.52 5.8 2.32 7.07 9.22 2.43 4.43 4.05]] Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: 4.90 ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ: 1.04 ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ: 9.96 ΠΠ΅Π΄ΠΈΠ°Π½Π°: 4.79 Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅: 2.31 ΠΠΈΡΠΏΠ΅ΡΡΠΈΡ: 5.32 ΠΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ: [5.72 4.92 8.56 7.27 3.38 6.24 2.09 3.96 1.93 4.05]
import numpy as np # Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° 10 Π½Π° 10 ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» Π² ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π΅ ΠΎΡ 1.01 Π΄ΠΎ 9.99 arr = np.random.uniform(low=1.01, high=9.99, size=(10,10)) # ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° Π΄ΠΎ 2 Π·Π½Π°ΠΊΠΎΠ² arr = np.around(arr, decimals=2) # Π²ΡΠ²ΠΎΠ΄ ΠΌΠ°ΡΡΠΈΠ²Π° print(f"ΠΠ°ΡΡΠΈΠ²: \n{arr}") # Π²ΡΠ²ΠΎΠ΄ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ print(f"\nΠ‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: {arr.mean():.2f}") print(f"ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ: {np.min(arr):.2f}") print(f"ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ: {np.max(arr):.2f}") print(f"ΠΠ΅Π΄ΠΈΠ°Π½Π°: {np.median(arr):.2f}") print(f"Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅: {np.std(arr):.2f}") print(f"ΠΠΈΡΠΏΠ΅ΡΡΠΈΡ: {np.var(arr):.2f}") # Π²ΡΠ²ΠΎΠ΄ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° print(f"\nΠΠΈΠ°Π³ΠΎΠ½Π°Π»Ρ: \n{np.diag(arr)}")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 2
ΠΠ»Ρ ΠΏΡΠ½ΠΊΡΠ° ΠΏΡΠΎΠΊΠ°ΡΠ° Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ΠΎΠ² Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΈΠ±ΡΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΠΎΠ½.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
Π‘Π°ΠΌΡΠΉ ΠΏΡΠΈΠ±ΡΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΠΎΠ½ - Π»Π΅ΡΠΎ
import numpy as np # ΠΠ°Π½Π½ΡΠ΅ ΠΎ ΠΏΡΠΎΠΊΠ°ΡΠ΅ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ΠΎΠ² Π·Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠ΅ΡΡΡ ΡΠ΅Π·ΠΎΠ½Π° spring_rentals = np.array([11362, 11489, 12842]) summer_rentals = np.array([15401, 16562, 17728]) autumn_rentals = np.array([14994, 13851, 12784]) winter_rentals = np.array([840, 950, 1210]) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΊΠ°ΡΠΎΠ² Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π·ΠΎΠ½Π° total_spring_rentals = np.sum(spring_rentals) total_summer_rentals = np.sum(summer_rentals) total_autumn_rentals = np.sum(autumn_rentals) total_winter_rentals = np.sum(winter_rentals) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΊΠ°ΡΠΎΠ² Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ΠΎΠ² Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ΅Π·ΠΎΠ½Π° average_spring_rentals = np.mean(spring_rentals) average_summer_rentals = np.mean(summer_rentals) average_autumn_rentals = np.mean(autumn_rentals) average_winter_rentals = np.mean(winter_rentals) # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ΅Π΄Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ average_rentals = np.array([average_spring_rentals, average_summer_rentals, average_autumn_rentals, average_winter_rentals]) # ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΏΡΠΈΠ±ΡΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅Π·ΠΎΠ½Π° most_profitable_season = np.argmax(average_rentals) seasons = ['Π²Π΅ΡΠ½Π°', 'Π»Π΅ΡΠΎ', 'ΠΎΡΠ΅Π½Ρ', 'Π·ΠΈΠΌΠ°'] print(f"Π‘Π°ΠΌΡΠΉ ΠΏΡΠΈΠ±ΡΠ»ΡΠ½ΡΠΉ ΡΠ΅Π·ΠΎΠ½ - {seasons[most_profitable_season]}")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 3
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Β«ΠΡΡΠ·ΠΠ²ΡΠΎΒ» ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΈ Π½Π° 4 Π·Π°Π²ΠΎΠ΄Π°Ρ . ΠΡΡΠ΅Ρ ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΏΠΎ ΠΌΠ΅ΡΡΡΠ°ΠΌ ΠΈ Π·Π°Π²ΠΎΠ΄Π°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΠΌΠ°ΡΡΠΈΠ²Π°:
[ # Π―Π½Π²Π°ΡΡ, Π€Π΅Π²ΡΠ°Π»Ρ, ΠΠ°ΡΡ, ΠΠΏΡΠ΅Π»Ρ, ΠΠ°ΠΉ, ΠΡΠ½Ρ, ΠΡΠ»Ρ, ΠΠ²Π³ΡΡΡ, Π‘Π΅Π½ΡΡΠ±ΡΡ, ΠΠΊΡΡΠ±ΡΡ, ΠΠΎΡΠ±ΡΡ, ΠΠ΅ΠΊΠ°Π±ΡΡ [1000, 1200, 1500, 1350, 1400, 1300, 1250, 1450, 1300, 1550, 1600, 1700], # ΠΠ°Π²ΠΎΠ΄ 1 [800, 900, 1000, 950, 1000, 1100, 1200, 1150, 1000, 1100, 1200, 1300], # ΠΠ°Π²ΠΎΠ΄ 2 [1200, 1300, 1250, 1400, 1500, 1600, 1650, 1700, 1600, 1550, 1500, 1400], # ΠΠ°Π²ΠΎΠ΄ 3 [900, 950, 1000, 1050, 1100, 1150, 1200, 1250, 1300, 1350, 1400, 1450], # ΠΠ°Π²ΠΎΠ΄ 4 ]
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ:
- ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠΏΡΡΠ΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ².
- ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ², ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ
Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°Π²ΠΎΠ΄Π΅ Π·Π° Π³ΠΎΠ΄.
- Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΡΠΉ Π·Π°Π²ΠΎΠ΄ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄: 61050 ΠΠ°Π²ΠΎΠ΄ 1 - 16600 Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² ΠΠ°Π²ΠΎΠ΄ 2 - 12700 Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² ΠΠ°Π²ΠΎΠ΄ 3 - 17650 Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² ΠΠ°Π²ΠΎΠ΄ 4 - 14100 Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² ΠΠ°Π²ΠΎΠ΄ 3 Π±ΡΠ» ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΡΠΌ
import numpy as np # Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π°Π½Π½ΡΡ ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅ production_data = np.array([ # Π―Π½Π²Π°ΡΡ, Π€Π΅Π²ΡΠ°Π»Ρ, ΠΠ°ΡΡ, ΠΠΏΡΠ΅Π»Ρ, ΠΠ°ΠΉ, ΠΡΠ½Ρ, ΠΡΠ»Ρ, ΠΠ²Π³ΡΡΡ, Π‘Π΅Π½ΡΡΠ±ΡΡ, ΠΠΊΡΡΠ±ΡΡ, ΠΠΎΡΠ±ΡΡ, ΠΠ΅ΠΊΠ°Π±ΡΡ [1000, 1200, 1500, 1350, 1400, 1300, 1250, 1450, 1300, 1550, 1600, 1700], # ΠΠ°Π²ΠΎΠ΄ 1 [800, 900, 1000, 950, 1000, 1100, 1200, 1150, 1000, 1100, 1200, 1300], # ΠΠ°Π²ΠΎΠ΄ 2 [1200, 1300, 1250, 1400, 1500, 1600, 1650, 1700, 1600, 1550, 1500, 1400], # ΠΠ°Π²ΠΎΠ΄ 3 [900, 950, 1000, 1050, 1100, 1150, 1200, 1250, 1300, 1350, 1400, 1450], # ΠΠ°Π²ΠΎΠ΄ 4 ]) # ΠΠΎΠ΄ΡΡΠ΅Ρ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄ total_production = np.sum(production_data) # ΠΠΎΠ΄ΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°Π²ΠΎΠ΄Π΅ Π·Π° Π³ΠΎΠ΄ total_production_by_factory = np.sum(production_data, axis=1) # ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°Π²ΠΎΠ΄Π°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄ most_productive_factory = np.argmax(total_production_by_factory) + 1 # ΠΡΠ²ΠΎΠ΄ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄ print(f"ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄: {total_production}") # ΠΡΠ²ΠΎΠ΄ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½ΡΡ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π·Π°Π²ΠΎΠ΄Π΅ Π·Π° Π³ΠΎΠ΄ for i, count in enumerate(total_production_by_factory): print(f"ΠΠ°Π²ΠΎΠ΄ {i+1} - {count} Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ²") # ΠΡΠ²ΠΎΠ΄ Π·Π°Π²ΠΎΠ΄Π°, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π±ΡΠ»ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π³ΡΡΠ·ΠΎΠ²ΠΈΠΊΠΎΠ² Π·Π° Π³ΠΎΠ΄ print(f"ΠΠ°Π²ΠΎΠ΄ {most_productive_factory} Π±ΡΠ» ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΡΠΌ")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 4
ΠΠ»Ρ ΠΊΠΎΠ½Π΄ΠΈΡΠ΅ΡΡΠΊΠΎΠΉ ΡΠ°Π±ΡΠΈΠΊΠΈ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ Π³ΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ 12 ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ Π²ΠΈΠ΄Π°ΠΌ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ ΠΈ ΠΌΠ°ΡΡΠΈΠ² Ρ ΡΠ΅Π½Π°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅:
production_plan = np.array([ [110, 120, 80, 100, 200, 200, 100, 90, 150, 100, 205, 100], [90, 110, 70, 110, 180, 200, 120, 80, 150, 100, 205, 110], [80, 70, 90, 90, 150, 105, 105, 70, 90, 80, 105, 85], [120, 140, 100, 120, 230, 100, 110, 80, 70, 90, 205, 110], [130, 150, 110, 110, 240, 100, 110, 80, 75, 90, 205, 100], [140, 160, 120, 110, 250, 100, 100, 80, 75, 90, 205, 120], [150, 170, 130, 90, 260, 100, 100, 80, 80, 100, 205, 200], [160, 180, 140, 120, 270, 100, 120, 80, 85, 100, 205, 210], [170, 190, 150, 120, 280, 100, 130, 80, 90, 120, 205, 210], [180, 200, 160, 130, 290, 100, 140, 80, 95, 130, 205, 220], [190, 210, 170, 140, 300, 100, 130, 80, 150, 140, 205, 230], [200, 220, 180, 150, 310, 100, 160, 80, 150, 200, 205, 250] ]) prices_per_ton = np.array([10000, 150000, 12000, 80000, 2000, 33060, 5000, 10000, 170000, 19000, 8600, 7000])
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ:
- ΠΠ΅ΡΡΡΡ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅.
- ΠΠΈΠ΄Ρ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄ΠΎΠ»ΠΈ Π²ΡΠ΅Ρ
Π·Π°ΡΡΠ°Ρ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π·Π°ΡΡΠ°Ρ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π½Π°: Π’ΠΎΡΡ "ΠΠ»ΡΠ±Π½ΠΈΡΠ½ΡΠΉ" ΠΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΡΠ΅Π΄ΡΡΠ² ΡΡΠ°ΡΠΈΡΡΡ Π½Π°: ΠΡΡΠ½ΠΈΠΊΠΈ "ΠΠ·ΡΠΌ" ΠΠ΅ΡΡΡ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅: ΠΌΠ°ΡΡ ΠΠ΅ΡΡΡ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅: Π΄Π΅ΠΊΠ°Π±ΡΡ
import numpy as np # ΠΠΎΠ΄ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°Π½ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π° (Π² ΡΠΎΠ½Π½Π°Ρ ) production_plan = np.array([ [110, 120, 80, 100, 200, 200, 100, 90, 150, 100, 205, 100], [90, 110, 70, 110, 180, 200, 120, 80, 150, 100, 205, 110], [80, 70, 90, 90, 150, 105, 105, 70, 90, 80, 105, 85], [120, 140, 100, 120, 230, 100, 110, 80, 70, 90, 205, 110], [130, 150, 110, 110, 240, 100, 110, 80, 75, 90, 205, 100], [140, 160, 120, 110, 250, 100, 100, 80, 75, 90, 205, 120], [150, 170, 130, 90, 260, 100, 100, 80, 80, 100, 205, 200], [160, 180, 140, 120, 270, 100, 120, 80, 85, 100, 205, 210], [170, 190, 150, 120, 280, 100, 130, 80, 90, 120, 205, 210], [180, 200, 160, 130, 290, 100, 140, 80, 95, 130, 205, 220], [190, 210, 170, 140, 300, 100, 130, 80, 150, 140, 205, 230], [200, 220, 180, 150, 310, 100, 160, 80, 150, 200, 205, 250] ]) # Π¦Π΅Π½Ρ Π½Π° ΡΡΡΡΠ΅ (Π·Π° ΡΠΎΠ½Π½Ρ) prices_per_ton = np.array([10000, 150000, 12000, 80000, 2000, 33060, 5000, 10000, 170000, 19000, 8600, 7000]) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² Π·Π°ΠΊΡΠΏΠΎΠΊ ΡΡΡΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ° ΠΈ Π²ΠΈΠ΄Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ monthly_purchases = np.dot(production_plan, np.diag(prices_per_ton)) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΉ ΡΡΠΎΠΈΠΌΠΎΡΡΠΈ Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΡΡ Π·Π°ΠΊΡΠΏΠΎΠΊ ΡΡΡΡΡ total_costs = np.sum(monthly_purchases, axis=1) months = ['ΡΠ½Π²Π°ΡΡ', 'ΡΠ΅Π²ΡΠ°Π»Ρ', 'ΠΌΠ°ΡΡ', 'Π°ΠΏΡΠ΅Π»Ρ', 'ΠΌΠ°ΠΉ', 'ΠΈΡΠ½Ρ', 'ΠΈΡΠ»Ρ', 'Π°Π²Π³ΡΡΡ', 'ΡΠ΅Π½ΡΡΠ±ΡΡ', 'ΠΎΠΊΡΡΠ±ΡΡ', 'Π½ΠΎΡΠ±ΡΡ', 'Π΄Π΅ΠΊΠ°Π±ΡΡ'] # ΠΠΈΠ΄Ρ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ products = np.array(['ΠΠ΅ΡΠ΅Π½ΡΠ΅ "Π§Π΅Π±ΡΡΠ°ΡΠΊΠ°"', 'Π’ΠΎΡΡ "ΠΠ»ΡΠ±Π½ΠΈΡΠ½ΡΠΉ"', 'ΠΠΎΠ½ΡΠ΅ΡΡ "ΠΡΠΈΡΠΊΠ°"', 'Π¨ΠΎΠΊΠΎΠ»Π°Π΄ "ΠΠΎΠ»ΠΎΡΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ"', 'ΠΡΡΠ½ΠΈΠΊΠΈ "ΠΠ·ΡΠΌ"', 'ΠΠ΅ΡΠΈΡ "ΠΡΠΈΠ·"', 'ΠΠΈΡΠΎΠΆΠ½ΠΎΠ΅ "Π’ΠΈΡΠ°ΠΌΠΈΡΡ"', 'ΠΠ°ΡΠΌΠ΅Π»Π°Π΄ "Fruit&Berry"', 'ΠΡΡΡ "ΠΡΠ΅ΠΌ-Π±ΡΡΠ»Π΅"', 'ΠΡΠ°ΡΠ½ΠΈ "ΠΡΠ΅Ρ ΠΎΠ²ΡΠΉ"', 'ΠΠ΅ΠΊΡ "ΠΡΠ°Π·Π΄Π½ΠΈΠΊ"', 'ΠΠ°ΡΠΎΠ½ΡΠΈΠΊΠΈ "Π‘ΡΡΠΏΡΠΈΠ·"']) # ΠΠ°Π·Π²Π°Π½ΠΈΡ ΠΈΠ½Π³ΡΠ΅Π΄ΠΈΠ΅Π½ΡΠΎΠ² ingredients = np.array(['ΠΡΠΊΠ°', 'Π‘Π°Ρ Π°Ρ', 'ΠΠ°ΡΠ»ΠΎ', 'ΠΠ°ΠΊΠ°ΠΎ', 'ΠΠ΅Π΄', 'ΠΠ°Π½ΠΈΠ»Ρ', 'Π―ΠΉΡΠ°', 'ΠΠΎΠ½Π΄ΠΈΡΠ΅ΡΡΠΊΠ°Ρ Π³Π»Π°Π·ΡΡΡ', 'Π€ΡΡΠΊΡΡ', 'ΠΡΠ΅Ρ ΠΈ', 'ΠΠΎΠΊΠΎΡΠΎΠ²Π°Ρ ΡΡΡΡΠΆΠΊΠ°', 'Π‘Π»ΠΈΠ²ΠΊΠΈ']) # Π‘ΡΠΌΠΌΠ°ΡΠ½Π°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π²ΠΈΠ΄Ρ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ product_costs = np.sum(monthly_purchases, axis=0) # ΠΠΈΠ΄Ρ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠΈ, Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΡ ΠΎΠ΄ΡΡΡΡ ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π·Π°ΡΡΠ°Ρ most_expenses_index = np.argmax(product_costs) least_expenses_index = np.argmin(product_costs) # ΠΠ½Π΄Π΅ΠΊΡΡ ΠΌΠ΅ΡΡΡΠ΅Π² Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅ min_month_index = np.argmin(total_costs) max_month_index = np.argmax(total_costs) print(f"ΠΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π·Π°ΡΡΠ°Ρ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π½Π°: {products[most_expenses_index]}") print(f"ΠΠ΅Π½ΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΡΠ΅Π΄ΡΡΠ² ΡΡΠ°ΡΠΈΡΡΡ Π½Π°: {products[least_expenses_index]}") print(f"ΠΠ΅ΡΡΡ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅: {months[min_month_index]}") print(f"ΠΠ΅ΡΡΡ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌΠΈ Π·Π°ΡΡΠ°ΡΠ°ΠΌΠΈ Π½Π° ΡΡΡΡΠ΅: {months[max_month_index]}")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 5
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΡΠΎΡΡΠ°Π² ΠΏΠΎΡΡΡΠ΅Π»Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠΌΡ ΡΡΠΎΠ²Π½Ρ ΡΠΈΡΠΊΠ°.
ΠΡΠΈΠΌΠ΅Ρ Π²Π²ΠΎΠ΄Π°:
ΠΡΠΎΡΠ»Π°Ρ Π΄ΠΎΡ ΠΎΠ΄Π½ΠΎΡΡΡ Π°ΠΊΡΠΈΠΉ 10, 5, 15, 8, 12 Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π°ΠΊΡΠΈΠΉ 2, 3, 4, 2.5, 3.5 Π‘ΡΠΌΠΌΠ° 1000000 ΠΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ° 10 ΠΠΎΠ»ΠΈ Π°ΠΊΡΠΈΠΉ Π² ΠΏΠΎΡΡΡΠ΅Π»Π΅ 0.2, 0.3, 0.15, 0.25, 0.1
ΠΡΠ²ΠΎΠ΄:
Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ° ΠΏΠΎΡΡΡΠ΅Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ.
import numpy as np print("ΠΡΠΎΡΠ»Π°Ρ Π΄ΠΎΡ ΠΎΠ΄Π½ΠΎΡΡΡ Π°ΠΊΡΠΈΠΉ") # ΠΡΠΎΡΠ»Π°Ρ Π΄ΠΎΡ ΠΎΠ΄Π½ΠΎΡΡΡ Π°ΠΊΡΠΈΠΉ (Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ Π·Π° ΠΏΠ΅ΡΠΈΠΎΠ΄) returns = np.array([float(element) for element in input().split(",")]) print("Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π°ΠΊΡΠΈΠΉ") # Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π°ΠΊΡΠΈΠΉ (Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ ) std_devs = np.array([float(element) for element in input().split(",")]) print("Π‘ΡΠΌΠΌΠ°") # Π‘ΡΠΌΠΌΠ°, ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°Π΅Ρ ΠΈΠ½Π²Π΅ΡΡΠΎΡ invest_amount = int(input()) print("ΠΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ°") # ΠΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ° ΠΏΠΎΡΡΡΠ΅Π»Ρ (Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ ) risk_level = int(input()) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ Π²Π·Π²Π΅ΡΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π½Π΅ΠΉ Π΄ΠΎΡ ΠΎΠ΄Π½ΠΎΡΡΠΈ ΠΏΠΎΡΡΡΠ΅Π»Ρ print("ΠΠΎΠ»ΠΈ Π°ΠΊΡΠΈΠΉ Π² ΠΏΠΎΡΡΡΠ΅Π»Π΅") weights = np.array([float(element) for element in input().split(",")]) portfolio_returns = np.dot(returns, weights) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ ΠΏΠΎΡΡΡΠ΅Π»Ρ portfolio_std_dev = np.sqrt(np.dot(weights, np.dot(std_devs, weights.T))) # ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΡΡΠΎΠ²Π½Ρ ΡΠΈΡΠΊΠ° ΠΏΠΎΡΡΡΠ΅Π»Ρ if (portfolio_std_dev <= risk_level).any(): print("Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ° ΠΏΠΎΡΡΡΠ΅Π»Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ.") else: print("Π£ΡΠΎΠ²Π΅Π½Ρ ΡΠΈΡΠΊΠ° ΡΠ»ΠΈΡΠΊΠΎΠΌ Π²ΡΡΠΎΠΊ. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π²Π΅ΡΠ° Π°ΠΊΡΠΈΠΉ Π² ΠΏΠΎΡΡΡΠ΅Π»Π΅.")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 6
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ΄Π΅Ρ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡΡΠΎΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ ΠΎ ΠΊΡΡΡΠ΅ Π±ΠΈΡΠΊΠΎΠΈΠ½Π° Ρ 01.01.22, Π²ΡΠ±ΠΈΡΠ°Ρ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Π΄Π½ΠΈ, ΠΊΠΎΠ³Π΄Π°:
- ΠΡΡΡ ΠΌΠΎΠ½Π΅ΡΡ ΠΏΡΠ΅Π²ΡΡΠ°Π» $ 30 000 Π² ΠΌΠΎΠΌΠ΅Π½Ρ Π·Π°ΠΊΡΡΡΠΈΡ.
- ΠΠ±ΡΠ΅ΠΌ ΡΠΎΡΠ³ΠΎΠ² ΡΠΎΡΡΠ°Π²Π»ΡΠ» Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ $ 16 000 000 000.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
2023-04-11 29653.679688 30509.083984 29609.300781 30235.058594 30235.058594 20121259843 2023-04-12 30231.582031 30462.480469 29725.574219 30139.052734 30139.052734 18651929926 2023-04-13 29892.740234 30539.845703 29878.623047 30399.066406 30399.066406 17487721001 2023-04-14 30409.562500 31005.607422 30044.498047 30485.699219 30485.699219 22659995079 2023-04-18 29449.091797 30470.302734 29154.849609 30397.552734 30397.552734 19480529496 2023-06-21 28311.310547 30737.330078 28283.410156 30027.296875 30027.296875 33346760979 2023-06-23 29896.382813 31389.539063 29845.214844 30695.468750 30695.468750 24115570085 2023-06-26 30480.523438 30636.029297 29955.744141 30271.130859 30271.130859 16493186997 2023-06-27 30274.320313 31006.787109 30236.650391 30688.164063 30688.164063 16428827944 2023-06-30 30446.085938 31238.339844 30363.273438 30821.589844 30821.589844 17436878848
import csv import numpy as np data = [] with open('BTC-USD.csv', 'r') as file: csv_reader = csv.reader(file) for row in csv_reader: data.append(row) header = data[0] close_prices_index = header.index('Close') volumes_index = header.index('Volume') close_prices = np.array([float(row[close_prices_index]) for row in data[1:]]) volumes = np.array([float(row[volumes_index]) for row in data[1:]]) threshold_price = 30000 threshold_volume = 16000000000 filtered_days = np.where((close_prices > threshold_price) & (volumes >= threshold_volume)) selected_days = [data[i+1] for i in filtered_days[0]] for day in selected_days: print(*day)
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 7
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ½ΡΠΉ ΠΊΠ°Π»ΡΠΊΡΠ»ΡΡΠΎΡ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΏΠ»Π°ΡΡ ΠΏΡΠΈ Π°Π½Π½ΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΠΈ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΡΠΏΠΎΡΠΎΠ±Π°Ρ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΡ.
- Π‘ΡΠΌΠΌΠ° β 5 000 000 ΡΡΠ±Π»Π΅ΠΉ.
- Π‘ΡΠ°Π²ΠΊΠ° β 12%.
- Π‘ΡΠΎΠΊ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΡ β 3 Π³ΠΎΠ΄Π°.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠ»Π°ΡΠ΅ΠΆ ΠΠ½Π½ΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΠΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ #1 166071.55 188888.89 #2 166071.55 187500.0 #3 166071.55 186111.11 #4 166071.55 184722.22 #5 166071.55 183333.33 #6 166071.55 181944.44 #7 166071.55 180555.56 #8 166071.55 179166.67 #9 166071.55 177777.78 #10 166071.55 176388.89 #11 166071.55 175000.0 #12 166071.55 173611.11 #13 166071.55 172222.22 #14 166071.55 170833.33 #15 166071.55 169444.44 #16 166071.55 168055.56 #17 166071.55 166666.67 #18 166071.55 165277.78 #19 166071.55 163888.89 #20 166071.55 162500.0 #21 166071.55 161111.11 #22 166071.55 159722.22 #23 166071.55 158333.33 #24 166071.55 156944.44 #25 166071.55 155555.56 #26 166071.55 154166.67 #27 166071.55 152777.78 #28 166071.55 151388.89 #29 166071.55 150000.0 #30 166071.55 148611.11 #31 166071.55 147222.22 #32 166071.55 145833.33 #33 166071.55 144444.44 #34 166071.55 143055.56 #35 166071.55 141666.67 #36 166071.55 140277.78 ΠΠ΅ΡΠ΅ΠΏΠ»Π°ΡΠ° ΠΏΡΠΈ Π°Π½Π½ΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠΈ: 978575.77 ΠΠ΅ΡΠ΅ΠΏΠ»Π°ΡΠ° ΠΏΡΠΈ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠΈ: 925000.0
Π Π΅ΡΠ΅Π½ΠΈΠ΅:
import numpy_financial as npf import numpy as np # ΠΠ°Π΄Π°Π½Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΡΠ΅Π΄ΠΈΡΠ° annual_interest_rate = 0.12 loan_amount = 5000000 loan_term = 3 # Π Π°ΡΡΠ΅Ρ ΠΌΠ΅ΡΡΡΠ½ΠΎΠΉ ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΠΎΠΉ ΡΡΠ°Π²ΠΊΠΈ ΠΈ ΠΎΠ±ΡΠ΅Π³ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ monthly_interest_rate = annual_interest_rate / 12 total_payments = loan_term * 12 # Π Π°ΡΡΠ΅Ρ Π°Π½Π½ΡΠΈΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° annuity_payment = npf.pmt(monthly_interest_rate, total_payments, -loan_amount) # Π Π°ΡΡΠ΅Ρ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° principal_payment = loan_amount / total_payments # Π Π°ΡΡΠ΅Ρ ΠΎΡΡΠ°Π²ΡΠ΅ΠΉΡΡ ΡΡΠΌΠΌΡ ΠΊΡΠ΅Π΄ΠΈΡΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΡΠ° remaining_loan_amounts = loan_amount - np.arange(total_payments) * principal_payment # Π Π°ΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΡΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ interest_payments = remaining_loan_amounts * monthly_interest_rate # Π Π°ΡΡΠ΅Ρ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ»Π°ΡΠ΅ΠΆΠ΅ΠΉ differentiated_payments = principal_payment + interest_payments # ΠΡΠ²ΠΎΠ΄ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ print(f"{'ΠΠ»Π°ΡΠ΅ΠΆ':<10}{'ΠΠ½Π½ΡΠΈΡΠ΅ΡΠ½ΡΠΉ':<15}{'ΠΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ':<15}") # ΠΡΠ²ΠΎΠ΄ ΡΡΡΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ»Π°ΡΠ΅ΠΆΠ° for i, payment in enumerate(differentiated_payments, 1): print(f"#{i:<9}{round(annuity_payment, 2):<15}{round(payment, 2):<15}") # Π Π°ΡΡΠ΅Ρ ΠΎΠ±ΡΠΈΡ Π·Π°ΡΡΠ°Ρ Π½Π° ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ° Π΄Π»Ρ Π°Π½Π½ΡΠΈΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² total_cost_annuity = annuity_payment * total_payments total_cost_differentiated = sum(differentiated_payments) # ΠΡΠ²ΠΎΠ΄ ΠΎΠ±ΡΠΈΡ Π·Π°ΡΡΠ°Ρ Π½Π° ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠ΅Π΄ΠΈΡΠ° print(f"\nΠΠ΅ΡΠ΅ΠΏΠ»Π°ΡΠ° ΠΏΡΠΈ Π°Π½Π½ΡΠΈΡΠ΅ΡΠ½ΠΎΠΌ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠΈ: {round(total_cost_annuity - loan_amount, 2)}") print(f"ΠΠ΅ΡΠ΅ΠΏΠ»Π°ΡΠ° ΠΏΡΠΈ Π΄ΠΈΡΡΠ΅ΡΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ³Π°ΡΠ΅Π½ΠΈΠΈ: {round(total_cost_differentiated - loan_amount, 2)}")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 8
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΡ Π½Π°Π³ΡΡΠ·ΠΎΠΊ Π½Π° ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ. Π£ Π²Π°Ρ Π΅ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎΠ± ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠΈ, ΡΠΈΠ»Π΅ ΠΈ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΡΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄Π° Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ:
- Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ β 3.5, 4.2, 2.8, 3.5, 4.2, 5.1, 6.2, 3.9, 4.7
- Π‘ΠΈΠ»Π° β 250, 280, 220, 290, 310, 260, 265, 270, 275
- ΠΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡ β 0.02, 0.03, 0.01, 0.02, 0.03, 0.04, 0.05, 0.03, 0.02
ΠΡΠΆΠ½ΠΎ:
- ΠΠ°ΠΉΡΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ, ΡΠΈΠ»Ρ ΠΈ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, Π° ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΡΡΠΈΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ.
- ΠΡΡΠΈΡΠ»ΠΈΡΡ ΠΏΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΡΠΌΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΠ»Ρ Π½Π° ΠΏΡΠΎΡΡΠΆΠ΅Π½ΠΈΠΈ Π²ΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΄Π°.
- Π Π°ΡΡΡΠΈΡΠ°ΡΡ ΡΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΠ»Ρ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅: 6.2 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: 6 ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅: 2.8 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: 2 Π‘ΠΈΠ»Π° ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠ»Π°: 310 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΠ»Ρ: 4 ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠ»Π°: 220 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΠ»Ρ: 2 ΠΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡ: 0.05 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ: 6 ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡ: 0.01 ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ: 2 ΠΠ½ΡΠ΅Π³ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΠΎΠΉ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: 34.0 ΠΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΠΎΠΉ ΡΠΈΠ»Ρ: 2157.5 Π‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ° Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: 4.23 Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: 0.95 Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ»Ρ: 268.89 Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΡΠΈΠ»Ρ: 23.90
import numpy as np # ΠΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΄Ρ acceleration = np.array([3.5, 4.2, 2.8, 3.5, 4.2, 5.1, 6.2, 3.9, 4.7]) force = np.array([250, 280, 220, 290, 310, 260, 265, 270, 275]) deformation = np.array([0.02, 0.03, 0.01, 0.02, 0.03, 0.04, 0.05, 0.03, 0.02]) # ΠΠ°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° max_acceleration = np.max(acceleration) min_acceleration = np.min(acceleration) time_of_max_acceleration = np.argmax(acceleration) time_of_min_acceleration = np.argmin(acceleration) max_force = np.max(force) min_force = np.min(force) time_of_max_force = np.argmax(force) time_of_min_force = np.argmin(force) max_deformation = np.max(deformation) min_deformation = np.min(deformation) time_of_max_deformation = np.argmax(deformation) time_of_min_deformation = np.argmin(deformation) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΠΏΠ»ΠΎΡΠ°Π΄ΠΈ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΠΎΠΉ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΠ»Ρ area_acceleration = np.trapz(acceleration) area_force = np.trapz(force) # ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ ΡΡΠ΅Π΄Π½Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΡ Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΠ»Ρ mean_acceleration = np.mean(acceleration) std_acceleration = np.std(acceleration) mean_force = np.mean(force) std_force = np.std(force) print("Π£ΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅") print("ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅:", max_acceleration) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ:", time_of_max_acceleration) print("ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅:", min_acceleration) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ:", time_of_min_acceleration) print("\nΠ‘ΠΈΠ»Π°") print("ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠ»Π°:", max_force) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΠ»Ρ:", time_of_max_force) print("ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ ΡΠΈΠ»Π°:", min_force) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΠ»Ρ:", time_of_min_force) print("\nΠΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡ") print("ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡ:", max_deformation) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ:", time_of_max_deformation) print("ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°Ρ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡ:", min_deformation) print("ΠΡΠ΅ΠΌΡ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠΈ:", time_of_min_deformation) print("\nΠΠ½ΡΠ΅Π³ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ") print("ΠΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΠΎΠΉ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ:", area_acceleration) print("ΠΠ»ΠΎΡΠ°Π΄Ρ ΠΏΠΎΠ΄ ΠΊΡΠΈΠ²ΠΎΠΉ ΡΠΈΠ»Ρ:", area_force) print("\nΠ‘ΡΠ°ΡΠΈΡΡΠΈΠΊΠ°") print(f"Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: {mean_acceleration:.2f}") print(f"Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ: {std_acceleration:.2f}") print(f"Π‘ΡΠ΅Π΄Π½Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ»Ρ: {mean_force:.2f}") print(f"Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΡΠΈΠ»Ρ: {std_force:.2f}")
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 9
ΠΠΌΠ΅ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π²ΡΡΡΡΠΊΠ΅ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π³ΠΎΡΠΎΠ΄Π°Ρ :
10.07.23 | 11.07.23 | 12.07.23 | 13.07.23 | 14.07.23 | |
ΠΠΈΠΆΠ½ΠΈΠΉ ΠΠΎΠ²Π³ΠΎΡΠΎΠ΄ | 1000000 | 2000000 | 2500000 | 3000000 | 2150000 |
ΠΡΡΡΠ°Ρ Π°Π½Ρ | 1560000 | 2330000 | 2500000 | 3990000 | 2150000 |
Π‘Π°ΠΌΠ°ΡΠ° | 2120000 | 2500000 | 3770000 | 2650000 | 4000000 |
ΠΠΎΡΠΊΠ²Π° | 2589000 | 2990000 | 4488000 | 4586000 | 3500000 |
ΠΠΎΡΠΎΠ½Π΅ΠΆ | 2100000 | 2599000 | 3100000 | 2110000 | 4233000 |
Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ | 1533000 | 2660000 | 4220000 | 3500000 | 2577000 |
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ:
- ΠΠΎΡΠΎΠ΄ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ.
- ΠΠ°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠΎΡΠΎΠ΄ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ: ΠΠΎΡΠΊΠ²Π° ΠΠ΅Π½Ρ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ: 13.07.23
import numpy as np revenue = np.array([[1000000, 2000000, 2500000, 3000000, 2150000], [1560000, 2330000, 2500000, 3990000, 2150000], [2120000, 2500000, 3770000, 2650000, 4000000], [2589000, 2990000, 4488000, 4586000, 3500000], [2100000, 2599000, 3100000, 2110000, 4233000], [1533000, 2660000, 4220000, 3500000, 2577000]]) cities = np.array(['ΠΠΈΠΆΠ½ΠΈΠΉ ΠΠΎΠ²Π³ΠΎΡΠΎΠ΄', 'ΠΡΡΡΠ°Ρ Π°Π½Ρ', 'Π‘Π°ΠΌΠ°ΡΠ°', 'ΠΠΎΡΠΊΠ²Π°', 'ΠΠΎΡΠΎΠ½Π΅ΠΆ', 'Π‘Π°Π½ΠΊΡ-ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³']) days = np.array(['10.07.23', '11.07.23', '12.07.23', '13.07.23', '14.07.23']) # ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π³ΠΎΡΠΎΠ΄ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΡΠΌΠΌΠ°ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ total_revenue = np.sum(revenue, axis=1) max_revenue_city = cities[np.argmax(total_revenue)] print('ΠΠΎΡΠΎΠ΄ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ:', max_revenue_city) # ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π΅Π½Ρ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ max_revenue_day = days[np.argmax(np.max(revenue, axis=0))] print('ΠΠ΅Π½Ρ Ρ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠ΅ΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ:', max_revenue_day)
ΠΠ°Π΄Π°Π½ΠΈΠ΅ 10
ΠΠΌΠ΅ΡΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°Ρ :
years = np.random.choice(range(2011, 2023), size=100000) sales = np.random.randint(500, 125000, size=100000) revenue = np.random.randint(1000000, 50000000, size=100000)
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡ:
- ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π³ΠΎΠ΄Ρ.
- Π‘ΡΠ΅Π΄Π½ΡΡ Π²ΡΡΡΡΠΊΡ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π³ΠΎΠ΄Ρ.
- ΠΠΎΠ΄ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ.
- ΠΠΎΠ΄ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ.
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²ΠΎΠ΄Π°:
ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ Π² 2011 Π³ΠΎΠ΄Ρ: 515147911 Π² 2012 Π³ΠΎΠ΄Ρ: 515179236 Π² 2013 Π³ΠΎΠ΄Ρ: 528064407 Π² 2014 Π³ΠΎΠ΄Ρ: 517416072 Π² 2015 Π³ΠΎΠ΄Ρ: 527501756 Π² 2016 Π³ΠΎΠ΄Ρ: 538125332 Π² 2017 Π³ΠΎΠ΄Ρ: 522721395 Π² 2018 Π³ΠΎΠ΄Ρ: 525814794 Π² 2019 Π³ΠΎΠ΄Ρ: 518083325 Π² 2020 Π³ΠΎΠ΄Ρ: 520183365 Π² 2021 Π³ΠΎΠ΄Ρ: 531273592 Π² 2022 Π³ΠΎΠ΄Ρ: 524972288 Π‘ΡΠ΅Π΄Π½ΡΡ Π²ΡΡΡΡΠΊΠ° Π² 2011 Π³ΠΎΠ΄Ρ: 25704926.10 Π² 2012 Π³ΠΎΠ΄Ρ: 25219581.33 Π² 2013 Π³ΠΎΠ΄Ρ: 25578527.41 Π² 2014 Π³ΠΎΠ΄Ρ: 25712459.61 Π² 2015 Π³ΠΎΠ΄Ρ: 25326597.70 Π² 2016 Π³ΠΎΠ΄Ρ: 25396822.60 Π² 2017 Π³ΠΎΠ΄Ρ: 25516990.28 Π² 2018 Π³ΠΎΠ΄Ρ: 25346759.66 Π² 2019 Π³ΠΎΠ΄Ρ: 25283882.80 Π² 2020 Π³ΠΎΠ΄Ρ: 25723706.84 Π² 2021 Π³ΠΎΠ΄Ρ: 25462308.43 Π² 2022 Π³ΠΎΠ΄Ρ: 25350071.26 ΠΠΎΠ΄ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ: 2017 ΠΠΎΠ΄ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ ΠΎΡ ΠΏΡΠΎΠ΄Π°ΠΆ: 2019
import numpy as np # ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆΠ°Ρ years = np.random.choice(range(2011, 2023), size=100000) sales = np.random.randint(500, 125000, size=100000) revenue = np.random.randint(1000000, 50000000, size=100000) sales_data = np.column_stack((years, sales, revenue)) # ΠΠ°Ρ ΠΎΠ΄ΠΈΠΌ ΠΎΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ Π·Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π³ΠΎΠ΄ total_sales_by_year = np.zeros((12,)) for i in range(12): total_sales = np.sum(sales_data[sales_data[:, 0] == (2011 + i), 1]) total_sales_by_year[i] = total_sales print("ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΠΎΠ΄Π°ΠΆ") for i, year in enumerate(range(2011, 2023)): print(f"Π² {year} Π³ΠΎΠ΄Ρ: {int(total_sales_by_year[i])}") # ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌ ΡΡΠ΅Π΄Π½ΡΡ Π²ΡΡΡΡΠΊΡ ΠΎΡ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ Π·Π° ΠΊΠ°ΠΆΠ΄ΡΠΉ Π³ΠΎΠ΄ average_revenue_by_year = np.zeros((12,)) for i in range(12): average_revenue = np.mean(sales_data[sales_data[:, 0] == (2011 + i), 2]) average_revenue_by_year[i] = average_revenue print("\nΠ‘ΡΠ΅Π΄Π½ΡΡ Π²ΡΡΡΡΠΊΠ°") for i, year in enumerate(range(2011, 2023)): print(f"Π² {year} Π³ΠΎΠ΄Ρ: {average_revenue_by_year[i]:.2f}") # ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ Π³ΠΎΠ΄ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ max_sales_year = sales_data[:, 0][np.argmax(sales_data[:, 1])] print(f"\nΠΠΎΠ΄ Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΠΏΡΠΎΠ΄Π°ΠΆ: {max_sales_year}") # ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ Π³ΠΎΠ΄ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ ΠΎΡ ΠΏΡΠΎΠ΄Π°ΠΆΠΈ min_revenue_year = sales_data[:, 0][np.argmin(sales_data[:, 2])] print(f"ΠΠΎΠ΄ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π²ΡΡΡΡΠΊΠΎΠΉ ΠΎΡ ΠΏΡΠΎΠ΄Π°ΠΆ: {min_revenue_year}")
ΠΠΎΠ΄Π²Π΅Π΄Π΅ΠΌ ΠΈΡΠΎΠ³ΠΈ
NumPy β ΠΌΠΎΡΠ½Π°Ρ ΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΎΠ±Π»Π°Π΄Π°ΡΡΠ°Ρ Π΄Π²ΡΠΌΡ Π²Π°ΠΆΠ½ΡΠΌΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°ΠΌΠΈ:
- ΠΠ±ΡΠΈΡΠ½ΡΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π»ΡΠ±ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ β ΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²Π΅Π½Π½ΡΡ ΠΏΠΎΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΊΡΡΡΠΎΠ² Π²Π°Π»ΡΡ Π΄ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ.
- ΠΡΡΠΎΠΊΠΎΠΉ ΡΠΊΠΎΡΠΎΡΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ
(Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° C/C++).
ΠΡΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π΄Π΅Π»Π°ΡΡ NumPy Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ Π΄Π»Ρ Π½Π°ΡΡΠ½ΡΡ , ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΡΡ ΠΈ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ .
Π Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π³Π»Π°Π²Π΅ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ Π±ΡΠ΄Π΅ΠΌ ΠΈΠ·ΡΡΠ°ΡΡ Pandas.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ
- ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ, ΡΡΠ΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°, ΠΎΠ½Π»Π°ΠΉΠ½ IDE
- ΠΡΠ΅, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Python Ρ Π½ΡΠ»Ρ β ΠΊΠ½ΠΈΠ³ΠΈ, ΡΠ°ΠΉΡΡ, ΠΊΠ°Π½Π°Π»Ρ ΠΈ ΠΊΡΡΡΡ
- Π’ΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ : ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΠΏΠΈΡΠΊΠ°ΠΌΠΈ ΠΈ ΡΠΏΠΈΡΠΊΠΎΠ²ΡΠΌΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌΠΈ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΠ»ΠΎΠ²Π°ΡΡΠΌΠΈ ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΡΠ΅ΠΉ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΡΡΠ΅ΠΆΠ°ΠΌΠΈ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°ΠΌΠΈ
- ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΈΠΊΠ»Π° for
- Π£ΡΠ»ΠΎΠ²Π½ΡΠΉ ΡΠΈΠΊΠ» while
- Π€ΡΠ½ΠΊΡΠΈΠΈ Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½Π½ΡΠΌΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ
- ΠΠ½ΠΎΠ½ΠΈΠΌΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- Π Π΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- Π€ΡΠ½ΠΊΡΠΈΠΈ Π²ΡΡΡΠ΅Π³ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ°, Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ ΠΈ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΡ
- ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ
- Π Π΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ
- ΠΡΠ½ΠΎΠ²Ρ ΡΠΊΡΠ°ΠΏΠΈΠ½Π³Π° ΠΈ ΠΏΠ°ΡΡΠΈΠ½Π³Π°
- ΠΡΠ½ΠΎΠ²Ρ ΠΠΠ: ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΡΡΠΈΡ ΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
- ΠΡΠ½ΠΎΠ²Ρ ΠΠΠ: Π°Π±ΡΡΡΠ°ΠΊΡΠΈΡ ΠΈ ΠΏΠΎΠ»ΠΈΠΌΠΎΡΡΠΈΠ·ΠΌ
- ΠΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° Tkinter
- ΠΡΠ½ΠΎΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈΠ³Ρ Π½Π° Pygame
- ΠΡΠ½ΠΎΠ²Ρ ΡΠ°Π±ΠΎΡΡ Ρ SQLite
- ΠΡΠ½ΠΎΠ²Ρ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π° Flask
- ΠΡΠ½ΠΎΠ²Ρ ΡΠ°Π±ΠΎΡΡ Ρ NumPy
- ΠΡΠ½ΠΎΠ²Ρ Π°Π½Π°Π»ΠΈΠ·Π° Π΄Π°Π½Π½ΡΡ
Ρ Pandas