欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

NumPy進(jìn)行統(tǒng)計分析

 更新時間:2023年05月14日 11:26:38   作者:清木!  
本文主要介紹了NumPy進(jìn)行統(tǒng)計分析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

1 讀/寫文件

NumPy文件讀寫主要有二進(jìn)制的文件讀寫和文件列表形式的數(shù)據(jù)讀寫兩種形式

1、二進(jìn)制的文件讀寫

save函數(shù)是以二進(jìn)制的格式保存數(shù)據(jù)。 np.save(“…/tmp/save_arr”,arr) load函數(shù)是從二進(jìn)制的文件中讀取數(shù)據(jù)。 np.load(“…/tmp/save_arr.npy”) savez函數(shù)可以將多個數(shù)組保存到一個文件中。 np.savez(‘…/tmp/savez_arr’,arr1,arr2) 存儲時可以省略擴(kuò)展名,但讀取時不能省略擴(kuò)展名。

# 利用NumPy進(jìn)行統(tǒng)計分析
# 2.3.1讀寫文件
# 1、二進(jìn)制數(shù)據(jù)存儲
# 一個數(shù)組存儲,用save()方法,后綴是.npy
# 存儲時可以省略擴(kuò)展名,但是讀取時不能省略。
import numpy as np
arr = np.arange(25).reshape(5,5)
np.save("F:/test/save_arr",arr) #保存數(shù)組
print(arr)
data1 = np.load("F:/test/save_arr.npy") # 讀取數(shù)據(jù)
print(data1)
# 2、多個數(shù)組存儲,使用savez(),后綴是.npz
arr1 = np.array([[1,2,3],[4,5,6]])
arr2 = np.arange(0,1,0.2)
np.savez("F:/test/save_arr2",arr1,arr2) #保存數(shù)組
print(arr1)
print(arr2)
data2 = np.load("F:/test/save_arr2.npz")
print(data2['arr_0'])
print(data2['arr_1'])

2、讀取文本格式的數(shù)據(jù)

savetxt函數(shù)是將數(shù)組寫到某種分隔符隔開的文本文件中。 np.savetxt(“…/tmp/arr.txt”, arr, fmt=“%d”, delimiter=“,”) loadtxt函數(shù)執(zhí)行的是把文件加載到一個二維數(shù)組中。 np.loadtxt(“…/tmp/arr.txt”,delimiter=“,”) genfromtxt函數(shù)面向的是結(jié)構(gòu)化數(shù)組和缺失數(shù)據(jù)。 np.genfromtxt(“…/tmp/arr.txt”, delimiter = “,”)

# 3、文件存儲與讀寫
arr = np.arange(0, 12, 1).reshape(4, -1)
print(arr)
np.savetxt("F:/test/save_arr.txt", arr, fmt="%d", delimiter=',')
data = np.loadtxt("F:/test/save_arr.txt", delimiter=',')
print(data)
# 使用genfromtxt讀取數(shù)據(jù)
data2 = np.genfromtxt("F:/test/save_arr.txt", delimiter=',')
print(data2)

2 使用數(shù)組進(jìn)行簡單統(tǒng)計分析

1、排序

直接排序 sort函數(shù)是最常用的排序方法:arr.sort() sort函數(shù)也可以指定一個axis參數(shù),使得sort函數(shù)可以沿著指定軸對數(shù)據(jù)集進(jìn)行排序。axis=1為沿橫軸排序; axis=0為沿縱軸排序。 間接排序 argsort函數(shù)返回值為重新排序值的下標(biāo)。 arr.argsort() lexsort函數(shù)返回值是按照最后一個傳入數(shù)據(jù)排序的。 np.lexsort((a,b,c))

# 2.3.2 使用函數(shù)進(jìn)行簡單的統(tǒng)計分析
# 1、排序
np.random.seed(0)  #設(shè)置隨機種子
arr = np.random.randint(1, 10, size=10)
print(arr)
arr.sort  # 直接排序
print(arr)
# 二維數(shù)組
np.random.seed(0)  #設(shè)置隨機種子
arr2 = np.random.randint(1,10, size=(3,3))
print(arr2)
arr2.sort(axis=1)  # axis=1沿著橫軸排序
print(arr2)
arr2.sort(axis=0)  # axis=0沿著縱軸排序
print(arr2)
# argsort()排序
np.random.seed(0)  #設(shè)置隨機種子
arr = np.random.randint(1, 10, size=6)
print(arr)
print(arr.argsort())  # argsort()返回的是新數(shù)據(jù)在原數(shù)據(jù)序列中的位置
# lexsort()排序
a = np.array([3,2,6,4,5])
b = np.array([50, 30, 40, 20, 10])
c = np.array([400, 300, 600, 100, 200])
d = np.lexsort((a,b,c))  # lexsort()只接收一個參數(shù),即(a,b,c)
# 多個鍵值排序時是按照最后一個傳入數(shù)據(jù)計算的
print(list(zip(a[d], b[d], c[d])))

2、去重與重復(fù)數(shù)據(jù)

去重: 通過unique函數(shù)可以找出數(shù)組中的唯一值并返回已排序的結(jié)果。 重復(fù): np.tile(A,reps) tile函數(shù)主要有兩個參數(shù),參數(shù)“A”指定重復(fù)的數(shù)組,參數(shù)“reps”指定重復(fù)的次數(shù)。 numpy.repeat(a, repeats, axis=None) repeat函數(shù)主要有三個參數(shù),參數(shù)“a”是需要重復(fù)的數(shù)組元素,參數(shù)“repeats”是重復(fù)次數(shù),參數(shù)“axis”指定沿著哪個軸進(jìn)行重復(fù),axis = 0表示按行進(jìn)行元素重復(fù);axis = 1表示按列進(jìn)行元素重復(fù)。 這兩個函數(shù)的主要區(qū)別在于,tile函數(shù)是對數(shù)組進(jìn)行重復(fù)操作,repeat函數(shù)是對數(shù)組中的每個元素進(jìn)行重復(fù)操作。

# 2、去重與重復(fù)數(shù)據(jù)
arr = np.array([5,2,3,5,3,2,4,3])
print(arr)
arr = np.unique(arr)   # 去重且排序  == sorted(set(arr))
print(arr)
# 使用tile()和repeat()函數(shù)實現(xiàn)數(shù)據(jù)重復(fù)
arr = np.arange(5)
print(arr)
print(np.tile(arr,3))  # 重復(fù)三次
print(arr.repeat(3))  # 重復(fù)三次

3、常用的統(tǒng)計函數(shù)

當(dāng)axis=0時,表示沿著縱軸計算。當(dāng)axis=1時,表示沿著橫軸計算。默認(rèn)時計算一個總值。

# 3、常用的統(tǒng)計函數(shù)
arr = np.arange(1,13,1).reshape(3,4)
print(arr)
print(np.sum(arr))  # 和
print(arr.sum(axis=1)) # 橫軸的和
print(arr.sum(axis=0)) # 縱軸的和
print(np.mean(arr))   # 均值
print(arr.mean(axis=1)) # 橫軸的均值
print(arr.mean(axis=0)) # 縱軸的均值
print(np.std(arr))   # 標(biāo)準(zhǔn)差
print(np.var(arr))   # 方差
print(np.min(arr))   # 最小值
print(np.max(arr))   # 最大值
print(np.argmin(arr))   # 最小值的索引
print(np.argmax(arr))   # 最大值的索引
print(np.cumsum(arr))  # 累計和
print(np.cumprod(arr))  # 累計積

到此這篇關(guān)于NumPy進(jìn)行統(tǒng)計分析的文章就介紹到這了,更多相關(guān)NumPy 統(tǒng)計分析內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python和OpenCV檢測圖像中的物體并將物體裁剪下來

    使用Python和OpenCV檢測圖像中的物體并將物體裁剪下來

    這篇文章主要介紹了使用Python和OpenCV檢測圖像中的物體并將物體裁剪下來,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • python中不能連接超時的問題及解決方法

    python中不能連接超時的問題及解決方法

    這篇文章主要介紹了python中不能連接超時的問題及解決方法,需要的朋友可以參考下
    2018-06-06
  • 拒絕盜圖!教你怎么用python給圖片加水印

    拒絕盜圖!教你怎么用python給圖片加水印

    你是不是擔(dān)心,辛辛苦苦做的圖表被盜用? 試試用python加上你的專屬水印,讓盜版無所遁形. 只需幾行代碼,比用ps軟件操作更簡單、更快捷,需要的朋友可以參考下
    2021-06-06
  • 超詳細(xì)注釋之OpenCV實現(xiàn)視頻實時人臉模糊和人臉馬賽克

    超詳細(xì)注釋之OpenCV實現(xiàn)視頻實時人臉模糊和人臉馬賽克

    這篇文章主要介紹了OpenCV實現(xiàn)視頻實時人臉模糊和人臉馬賽克,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • Python數(shù)據(jù)可視化:冪律分布實例詳解

    Python數(shù)據(jù)可視化:冪律分布實例詳解

    今天小編就為大家分享一篇Python數(shù)據(jù)可視化:冪律分布實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 詳解如何使用Python實現(xiàn)復(fù)制粘貼的功能

    詳解如何使用Python實現(xiàn)復(fù)制粘貼的功能

    pandas?里面有一個?pd.read_clipboard?函數(shù),可以根據(jù)你復(fù)制的內(nèi)容生成DataFrame。本文就利用這個函數(shù)實現(xiàn)復(fù)制粘貼的功能,感興趣的可以了解一下
    2023-01-01
  • 詳解基于python-django框架的支付寶支付案例

    詳解基于python-django框架的支付寶支付案例

    這篇文章主要介紹了基于python-django框架的支付寶支付案例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Python對List中的元素排序的方法

    Python對List中的元素排序的方法

    這篇文章主要介紹了Python對List中的元素排序 ,需要的朋友可以參考下
    2018-04-04
  • python2.7的編碼問題與解決方法

    python2.7的編碼問題與解決方法

    這篇文章主要介紹了在python2.7中遇到的編碼問題與解決方法,文章介紹了直接在python文件內(nèi)修改系統(tǒng)編碼和在輸入輸出的時候,修改編碼格式的方法,有需要的朋友們可以參考借鑒。
    2016-10-10
  • 詳解Pytorch中Dataset的使用

    詳解Pytorch中Dataset的使用

    這篇文章主要為大家詳細(xì)介紹了如何加載并處理TorchVision的FashionMNIST Dataset,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2022-12-12

最新評論