程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python clip與range函數怎麼使用

編輯:Python

Python clip與range函數怎麼使用

本文小編為大家詳細介紹“Python clip與range函數怎麼使用”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Python clip與range函數怎麼使用”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

一、range函數的定義

range函數的作用是生成一個起始值為start,終值不超過stop,步長為step的等差數列。range函數的基本調用語法如下:

range(start, stop[, step])

start:數組的起始值,可省略,默認值為0。

stop:數組的上限,生成不超過該值的等差數列。

step:步長,可省略,默認值為1,即數組中前後兩個數的差值。

二、range函數實例

省略起始值start和步長step

for i in range(6):    print(i)

得到結果:

0
1
2
3
4
5

可以發現range函數可以省略初始值start(默認值為0)和步長step(默認值為1),並取默認值生成等差數列。

設置初始值終值和步長

for i in range(5, 16, 2):    print(i)

得到結果:

5
7
9
11
13
15

可以發現range函數生成了一個初始值為5,終值不超過16(最大化),步長為2的等差數列。

三、random.randint函數的定義

random.randint函數是numpy庫中的,通常需要先加載numpy庫,再調用該函數。函數的基本調用語法如下:

import numpy as npnp.random.randint(low, high=None, size=None, dtype=int)

low:隨機生成的數要大於等於該值。

high:隨機生成的數要小於該值。

size:控制隨機數的尺寸,省略時默認輸出單個整數。

random.randint函數的作用是返回一個隨機整型數或整型數組或整型數據框。

范圍從low(含)到high(不含),即[low, high)。如果未寫參數high的值,則數據范圍為[0, low)。

四、random.randint函數實例

隨機生成5個[0, 6)之間的整數

for i in range(5):    print(np.random.randint(6))

得到結果:

0
1
5
1
4

可以發現random.randint函數中若只有一個數,則生成一個數據范圍為[0, 該數)的整數。

隨機生成[-2, 9)之間1維數組

np.random.randint(-2, 9, (1,6))

得到結果:

array([[ 6,  0,  6, -1, -2,  2]])

可以發現random.randint函數中的size取值可以控制數據的維度。第一個數指數據的行數,第二個數指數據的列數。例2生成一個1行6列的數組。

隨機生成[5, 10)之間的3行5列數據框

np.random.randint(5, 10, (3, 5))

得到結果:

array([[6, 8, 8, 5, 8],
       [6, 9, 9, 7, 9],
       [9, 7, 7, 7, 8]])

可以發現random.randint函數中的size取值可以控制數據的維度。第一個數指數據的行數,第二個數指數據的列數。例3生成一個3行6列的數據框。

五、clip函數的定義

clip函數是numpy庫中的,通常需要先加載numpy庫,再調用該函數。clip函數的基本調用語法如下:

import numpy as npnp.clip(a, a_min, a_max, out=None, **kwargs)

a:數組或數據框。

a_min:下界,區間的最小值,a中比a_min小的數都會強制變成a_min。

a_max:上界,區間的最大值,a中比a_max大的數都會強制變成a_max。

out:可以指定輸出矩陣的對象,shape與a相同。

該函數的作用是將a中的所有數限定到a_min和a_max這個區間中,超出這個區間的值都被截斷設置成界限值。

六、clip函數實例

把數組中的值應用clip函數進行截取

a = np.array(range(1, 10))a_min = 3a_max = 8print(a)print('======compare======')print(np.clip(a, a_min, a_max))

得到結果:

[1 2 3 4 5 6 7 8 9]
======compare======
[3 3 3 4 5 6 7 8 8]

compare之前的是原始值,之後的是用clip函數截取之後的值。可以發現clip函數把數組中小於a_min和大於a_max的值都強制變成了界限值。

把數據框中的值應用clip函數進行截取

a = np.random.randint(20, 50, (4, 4))a_min = 30a_max = 40print(a)print('====compare====')print(np.clip(a, a_min, a_max))

得到結果:

[[40 39 35 21]
 [29 44 36 46]
 [47 40 40 26]
 [24 24 26 44]]
====compare====
[[40 39 35 30]
 [30 40 36 40]
 [40 40 40 30]
 [30 30 30 40]]

可以發現clip函數把數據框中小於a_min和大於a_max的值都強制變成了界限值。

讀到這裡,這篇“Python clip與range函數怎麼使用”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速雲行業資訊頻道。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved