[英]Append values in matrix python
我正在嘗試填充aixj矩陣的值,其中每個單元格必須具有分配給它的值[,]。
我已經嘗試了很多東西。 例如,我嘗試的第一個單元格
F[0][0]=[None,0]
和
F[0][0].append=[None,0]
和
F[0][0].append(None,0)
但是單元格仍然是[]。 我假設我一定是在犯一個愚蠢的錯誤,但是請您幫忙
有什么理由不在您的代碼中使用numpy.array
嗎? 您可以這樣初始化您的(i,j)矩陣(例如,假設i = 2和j = 3):
import numpy as np
F = np.zeros((2,3)) # initializes the matrix (fill it with 0)
然后,如果要填充其第一行(例如,有意義的python索引從0開始):
F[0,:] = [2,None,6]
>> array([[ 2., nan, 6.],
[ 0., 0., 0.]])
為了正確初始化矩陣,速度總是比較好的,但是如果您需要添加一行,還可以使用numpy.append
方法( numpy.append ):
np.append(F,[[5,-1,3]],axis=0) # axis=0 specifies that you want to add a row
>> array([[ 2., nan, 6.],
[ 0., 0., 0.],
[ 5., -1., 3.]])
對於向量和矩陣, numpy
比嵌入列表更方便。
如果您真的想使用初始化的嵌入列表,我想您可以使用以下方法:
F = [[None]*3]*2 # initializes your 2 lines and 3 colomns list, if needed
>> [[None, None, None], [None, None, None]]
F[1] = [0,None,2,3] # fills your second line (embeded list 1)
>> [[None, None, None], [0, None, 2, 3]]
F[0] = [5] # erases and changes your first line (embeded list 0)
>> [[5], [0, None, 2, 3]]
F.append([1,-1,None]) # adds a new list (which will be the embeded list 2)
>> [[5], [0, None, 2, 3], [1, -1, None]]
鑒於您的帖子,它似乎涵蓋了您要實現的目標。 請注意,如果您主要通過F=[[]]
定義列表,則您只能訪問F[0]
並且要添加另一個嵌入列表,則需要使用list.append。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.