python從list列表中選出一個數(shù)和其對應(yīng)的坐標方法
例1:給一個列表如下,里面每個元素對應(yīng)的是x和y的值
a = [[5,2],[6,3],[8,8],[1,3]]
現(xiàn)在要挑出y的值為3對應(yīng)的x的值,即6和1
import numpy as np a = [[5,2],[6,3],[8,8],[1,3]] #c=np.mat(a),因為只有矩陣(也可以用array)才能用a[0,0]這樣的調(diào)用 #表示第一個數(shù)的用法而list沒有,故在最后append需要用到 #注意:array也沒有index這樣的用法(只有l(wèi)ist有,此題a已經(jīng)是list), #使用index要改成list c = np.mat(a) b = [] for i in range(len(a)): try: #使用try...except...是因為比如3不在第一個[5,2]中會報錯并終止運行 b_index = a[i].index(3) #使用index尋找3所在的索引值 except: pass #pass表示如果報錯那么跳過并繼續(xù)下一個 else: #如果沒有報錯則進行else內(nèi)容 b.append(c[i,0]) print(b) #結(jié)果為 [6,1]
或者使用簡單的如下:
a = [[5,2],[6,3],[8,8],[1,3]] x = [i for i in a if 3 in i] print(x)
例2:
已知一系列坐標(x,y,z,h)分別對應(yīng)橫坐標縱坐標z坐標和高,現(xiàn)在要在x-y平面畫出h=0.00221圖(實際上就是等高線圖)
h保留5位小數(shù)。
上面只展示了一小部分數(shù)據(jù)
1,導(dǎo)入數(shù)據(jù)
import matplotlib.pyplot as plt import numpy as np data = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt')
2,將第四列即h保留5位小數(shù)
for i in range(len(data)): data[i,3] = float('%.5f'%data[i,3])
3,將h=0.00211對應(yīng)的x,y坐標找到并保存到x_mat和y_mat中
x_mat = [] y_mat = [] for i in range(len(data)): try: data_index = list(data[i]).index(0.00211) except: pass else: x_mat.append(data[i,0]) y_mat.append(data[i,1])
4,畫散點圖
plt.scatter(x_mat,y_mat) plt.show()
結(jié)果如下:
完整代碼:
import matplotlib.pyplot as plt import numpy as np data = np.loadtxt(r'/media/sf_Share/fisher_matrix/myLSPE/data/41+95+150/r_0.01/sigma_F_0.1/sigma_F=0.1/threefre.txt') for i in range(len(data)): data[i,3] = float('%.5f'%data[i,3]) #data_list = list(data) x_mat = [] y_mat = [] for i in range(len(data)): try: data_index = list(data[i]).index(0.00211) except: pass else: x_mat.append(data[i,0]) y_mat.append(data[i,1]) plt.scatter(x_mat,y_mat) plt.show()
以上這篇python從list列表中選出一個數(shù)和其對應(yīng)的坐標方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python 牛頓法實現(xiàn)邏輯回歸(Logistic Regression)
這篇文章主要介紹了python 牛頓法實現(xiàn)邏輯回歸(Logistic Regression),幫助大家更好的進行機器學(xué)習(xí),感興趣的朋友可以了解下2020-10-10PyTorch深度學(xué)習(xí)模型的保存和加載流程詳解
PyTorch是一個開源的Python機器學(xué)習(xí)庫,基于Torch,用于自然語言處理等應(yīng)用程序。2017年1月,由Facebook人工智能研究院(FAIR)基于Torch推出了PyTorch,這篇文章主要介紹了PyTorch模型的保存和加載流程2021-10-10