nonzeros解析與例項

2021-08-21 02:55:40 字數 2901 閱讀 8045

from numpy import *

data = [[1,2,5,6],

[4,8,5,9],

[8,7,4,2],

[6,8,4,9],

[8,2,1,6],

[1,2,5,6],

[4,8,5,9]]

index = [[1,55],

[1,48],

[2,59],

[3,56],

[2,74],

[1,46],

[3,99]]

data = mat(data)

index = mat(index) #必須是矩陣的形式,不然上邊都是列表

print(index[:,0] == 1)

print(nonzero(index[:,0] == 1))

print(data[nonzero(index[:,0] == 1)])

# [[ true]

# [ true]

# [false]

# [false]

# [false]

# [ true]

# [false]]

# (array([0, 1, 5], dtype=int64), array([0, 0, 0], dtype=int64))

# [[1 4 1]]

#nonzeros返回的是true的下標 但注意是【【】】一層還是兩層

print(data[nonzero(index[:,0] == 1)[0]])

# [[1 2 5 6]

# [4 8 5 9]

# [1 2 5 6]]

#這是返回的兩者的區別
lists = [1,4,8,5,6]

lists = array(lists)

print(nonzero(lists > 4)[0])

print(nonzero(lists > 4))

# [2 3 4]

# (array([2, 3, 4], dtype=int64),)

#資料為mat時與資料為array時的返回的區別
data = [[1,2,3],

[2,5,4],

[2,6,9],

[7,4,9]]

data = array(data)

print(data[nonzero(data[:,1] <= 4)[0],:][0])

data = [[1,2,3],

[2,5,4],

[2,6,9],

[7,4,9]]

data = mat(data)

print(data[nonzero(data[:,1] <= 4)[0],:][0])

# [1 2 3]

# [[1 2 3]]

#

矩陣和列表的區別

defloaddata():

return[[1,1,1,0,0],

[2,2,2,0,0],

[1,1,1,0,0],

[5,5,5,0,0],

[1,1,0,2,2],

[0,0,0,3,3],

[0,0,0,1,1]]#利用

numpy

中的svd

進行分解

data = mat(loaddata())

print(data[0,:].a)

#[[1 1 1 0 0]]

print(type(data[0,:].a))

#print(type(data[0,:].a == 1))

#print(type(nonzero(data[0,:].a == 1)))

#foriinnonzero(data[0,:].a == 1):

print(i)

'''[0 0 0][0 1 2]'''data1 = array([1,2,3,1])

print(nonzero(data1 == 1))

#(array([0, 3], dtype=int64),)

print(type(nonzero(data1 == 1)))

#forjinnonzero(data1 == 1):

print(j)

#[0 3]

array與mat的區別

data2 = array(loaddata())

print(nonzero(data[0,:] == 1))

print(nonzero(data[0,:].a == 1))

print(nonzero(data2[0,:] == 1))

'''(array([0, 0, 0], dtype=int64), array([0, 1, 2], dtype=int64))(array([0, 0, 0], dtype=int64), array([0, 1, 2], dtype=int64))(array([0, 1, 2], dtype=int64),)'''

仿射密碼解析與例項

仿射密碼的加密函式是 e x ax b modm 其中 解密函式是 d x a 1 x b modm 其中 a 1 是 a 在 zm群的乘法逆元。下面我們以 e x 5x 8 mod26函式為例子進行介紹,加密字串為affine cipher,這裡我們直接採用字母表26個字母作為編碼系統 其對應的加...

C XML解析方式例項解析

c xml解析通過xpath的方式是如何辦到的呢?具體的操作步驟是什麼呢?那麼下面我們就向你介紹通過xpath的方式來實現c xml解析,希望對你了解c xml解析有所幫助。c xml解析通過xpath的方式的步驟 1 需要先載入文件,然後再讀取想要的節點值。xml文件 protected xmld...

C XML解析方式例項解析

c xml解析通過xpath的方式是如何辦到的呢?具體的操作步驟是什麼呢?那麼下面我們就向你介紹通過xpath的方式來實現c xml解析,希望對你了解c xml解析有所幫助。c xml解析通過xpath的方式的步驟 1 需要先載入文件,然後再讀取想要的節點值。xml文件 protected xmld...