Matrix Python:使用坐标操作矩阵

Matrix Python:使用坐标操作矩阵,matrix,python-2.7,Matrix,Python 2.7,我决定用一个列表来做一个矩阵来解决这个问题。我想用一个完全不同的列表中的值来填充这个矩阵 我在做一个项目,我分析来自学生玩90分钟的电脑游戏的聊天数据。我需要记录12名参与者每人向其他玩家发送了多少条消息。数据日志有数千行输出,因此我让python程序查看包含聊天记录的每一行,并列出记录的每个聊天记录 我已经解析了数据,这样我就有了一个名为WHO的列表,其中只包含说话人的姓名,还有一个名为WHO的列表,其中包含接收人的姓名。这可能是1到11个名称。假设名为S1的播放器刚刚向S3、S4和S7发送了

我决定用一个列表来做一个矩阵来解决这个问题。我想用一个完全不同的列表中的值来填充这个矩阵

我在做一个项目,我分析来自学生玩90分钟的电脑游戏的聊天数据。我需要记录12名参与者每人向其他玩家发送了多少条消息。数据日志有数千行输出,因此我让python程序查看包含聊天记录的每一行,并列出记录的每个聊天记录

我已经解析了数据,这样我就有了一个名为WHO的列表,其中只包含说话人的姓名,还有一个名为WHO的列表,其中包含接收人的姓名。这可能是1到11个名称。假设名为S1的播放器刚刚向S3、S4和S7发送了一条消息。我想增加S1向这些玩家发送消息的次数,我的列表如下所示:

who = ["S1"]
whom = ["S3", "S4", "S7"]
因此,我用以下内容创建了我的矩阵

rows = 12
columns = 12

def makeList(size):
    mylist = []
    for i in range(size):
        mylist.append(0)  #make a list of variable size full of 0's.
    return mylist

def makeMatrix(rows,columns):
    matrix = []
    for i in range(columns):
        matrix.append(makeList(rows)) #tells makeList() what size to be, appends the list therein to this new matrix.
    return matrix

matrix = makeMatrix(rows, columns)
从这里,我可以非常直接地操纵矩阵:

S1 = 0
S2 = 1
S3 = 2
S4 = 3
S5 = 4
S6 = 5
S7 = 6
S8 = 7
S9 = 8
S10 = 9
S11 = 10
S12 = 11

matrix[S1][S3] += 1 
matrix[S1][S4] += 1 
matrix[S1][S7] += 1 
表明S1再次与相关球员进行了对话

问题:我希望“who”和“who”中的值代表矩阵中的坐标,然后增加矩阵中的值。我如何才能使列表中的“谁”和“谁”成为影响矩阵的一些输入?有人能推荐一个循环或函数来完成这个任务吗? 提前谢谢


所以我想,举个例子来说明我的思考方向可能会有所帮助。我可以通过类似下面所写的for循环看到这一点。我知道这不是真正的代码

for i in range (11):  #
    if who contains (S%n %i):  #check if the list "who" contains S1, S2, S3, S4... etc.   
        for k in range (11): 
            if whom contains (S%d %i) #check if the list "whom" contains S1, S2, S3, etc.,
                matrix["S"+i]["S"+k] +=1
问题:如何编写矩阵[S1][S3],其中1和3是循环中的变量?
我如何做一个if语句来查找列表的内容?

在这个完整的“问题”中没有一个问号,你是对的。我补充了一个明确的问题,但也许我还是太含糊了。