<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          創(chuàng)建Numpy數(shù)組的 “7種” 方法,最全,必看,速看!

          共 2990字,需瀏覽 6分鐘

           ·

          2021-05-12 19:01

          1. 本文介紹


          • Ⅰ 創(chuàng)建數(shù)組的7種方法;
          • Ⅱ ndarray數(shù)組,常用屬性介紹;

          2. 創(chuàng)建數(shù)組的8種方法

          ① 利用array()函數(shù)創(chuàng)建數(shù)組
          利用array()函數(shù)創(chuàng)建數(shù)組,括號(hào)中傳入一個(gè)一維列表,就創(chuàng)建一個(gè)一維數(shù)組;傳入一個(gè)二維數(shù)組,就創(chuàng)建一個(gè)二維數(shù)組。
          array1 = [1,2,3]
          m = np.array(array1)
          print(m)

          array2 = [[1,2,3],[4,5,6]]
          n = np.array(array2)
          print(n)
          結(jié)果如下:
          ② 利用arange()和linspace()函數(shù)創(chuàng)建 “等差數(shù)列” 數(shù)組
          這兩個(gè)函數(shù)必須要講述:
          • np.arange(start,end,step):start和end表示起始位置,step表示步長(zhǎng),用于創(chuàng)建表示等差數(shù)列的一維數(shù)組,注意得到的結(jié)果數(shù)組不包含終值;
          • np.linspace(start,end,num):start和end表示起始位置,num表示個(gè)數(shù),用于創(chuàng)建表示等差數(shù)列的一維數(shù)組,可以通過endpoint參數(shù)指定是否包含終值,默認(rèn)值為True,即包含終值;
          array1 = np.arange(1,10)
          print(array1)

          array2 = np.arange(1,10,2)
          print(array2)
          結(jié)果如下:
          對(duì)于linspace()函數(shù),這里介紹兩個(gè)參數(shù):
          • endpoint=True表示是包含終止值(默認(rèn)),endpoint=False表示不包含終止值;
          • dtype=np.float64指定創(chuàng)建的數(shù)組的數(shù)據(jù)類型默認(rèn)是float64,你也可以設(shè)置為dtype=np.np.int32;
          array3 = np.linspace(1,20,num=5,endpoint=False,dtype=np.float64)
          print(array3)

          array4 = np.linspace(1,20,num=5,endpoint=False,dtype=np.int32)
          print(array4)

          array5 = np.linspace(1,20,num=5,endpoint=True,dtype=np.float64)
          print(array5)

          array6 = np.linspace(1,20,num=5,endpoint=True,dtype=np.int32)
          print(array6)
          結(jié)果如下:
          ③ 創(chuàng)建 “指定數(shù)值填充” 的數(shù)組
          這里介紹幾個(gè)常用函數(shù),用于生成指定數(shù)字填充的數(shù)組,會(huì)用就行。
          • np.zeros((x,y)):生成一個(gè)x行y列的,元素都是0的二維數(shù)組;
          • np.ones((x,y)):生成一個(gè)x行y列的,元素都是1的二維數(shù)組;
          • np.full((x,y),value):生成一個(gè)x行y列的,元素都是value的二維數(shù)組,其中這個(gè)value值可以是整數(shù)(正整數(shù),0,負(fù)整數(shù))或者小數(shù);
          array1 = np.zeros((3,4))
          print(array1)

          array2 = np.ones((3,4))
          print(array2)

          array3 = np.full((3,4),1.2)
          print(array3)
          結(jié)果如下:
          特別注意:其實(shí)這三個(gè)函數(shù),不僅可以創(chuàng)建一維數(shù)組,還可以創(chuàng)建三維數(shù)組(如下圖所示)。但是,我這里僅僅只是以創(chuàng)建二維數(shù)組為例,為大家講解。
          ④ 復(fù)制已有數(shù)組,創(chuàng)建指定數(shù)值的數(shù)組
          如果我們知道一個(gè)數(shù)組的形狀,想要?jiǎng)?chuàng)建一個(gè)和它形狀相同的數(shù)組,其實(shí)這里也有幾個(gè)函數(shù)。
          • np.zeros_like():復(fù)制已有數(shù)組形狀,創(chuàng)建一個(gè)全0數(shù)組;
          • np.ones_like():復(fù)制已有數(shù)組形狀,創(chuàng)建一個(gè)全1數(shù)組;
          • np.full_like():復(fù)制已有數(shù)組形狀,創(chuàng)建一個(gè)指定數(shù)值的數(shù)組;
          已知一個(gè)一維數(shù)組和一個(gè)二維數(shù)組:
          n1 = np.array([1,2,3]);
          n2 = np.array([[1,2,3],[4,5,6]])

          print(n1)
          print(n2)
          結(jié)果如下:
          我們分別利用上述函數(shù),創(chuàng)建和他們形狀一樣的數(shù)組。
          np.zeros_like(n1)

          np.ones_like(n2)

          np.full_like(n1,8)
          結(jié)果如下:
          ⑤ 創(chuàng)建 “單位矩陣” 和 “對(duì)角矩陣”
          創(chuàng)建單位矩陣,有 np.eye(x)np.identity(x) 這兩個(gè)函數(shù)。
          array1 = np.eye(3)
          print(array1)

          array2 = np.identity(4)
          print(array2)
          結(jié)果如下:
          創(chuàng)建對(duì)角矩陣,利用 np.diag() 函數(shù)。
          array3 = np.diag([10,20,30])
          print(array3)
          結(jié)果如下:
          ⑥ 利用logspace()函數(shù)創(chuàng)建 “等比數(shù)列” 數(shù)組
          前面我們已經(jīng)知道,可以利用arange()linspace()函數(shù),創(chuàng)建等差數(shù)列。現(xiàn)在來看看如何利用logspace()函數(shù),創(chuàng)建等比數(shù)列;
          • np.logspace(start, stop, num=50, endpoint=True, base=, dtype=None)
          • start和stop表示指數(shù)次冪,base表示底數(shù),也就是公比;
          • endpoint=True表示是包含終止值(默認(rèn)),endpoint=False表示不包含終止值;
          array1 = np.logspace(17, num=4, endpoint=True, base=2)
          print(array1)
          結(jié)果如下:
          ⑦ 通過 “自定義函數(shù)” 創(chuàng)建數(shù)組
          # 定義一個(gè)函數(shù)
          def f(x, y):
              return x * 2 + 1 + y

          # 從一個(gè)函數(shù)生成一個(gè)二維數(shù)組;
          b = np.fromfunction(f, (3,3), dtype=np.int32)
          print(b)
          結(jié)果如下:

          3. 常用屬性介紹

          對(duì)于每一個(gè)創(chuàng)建的數(shù)組,我們可以通過以下幾個(gè)屬性,來了解該數(shù)組。
          x = np.array([[1,2,3],[4,5,6]])
          print(x)

          x.shape # 數(shù)組形狀
          x.size # 數(shù)組中元素個(gè)數(shù)
          x.dtype # 數(shù)組中元素?cái)?shù)據(jù)類型
          x.ndim # 數(shù)組的維度
          結(jié)果如下:
          瀏覽 357
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄片视频在线看 | 欧美成人性爱免费在线 | 大香蕉亚洲在线 | 91超碰人妻 | 偷拍综合网 |