我有一个矩阵 Dataframe 与行和列-标签
矩阵数据框(M),格式如下C1 C2 C3 C4........
R1 R2 R3 R4 ....
以及另一个向量(C),其值仅具有一行,但具有不同的标签顺序(如下)C4 C5 C7 C1 C3 C2 C9......
我需要做这两个和积乘法,并存储在一个结果矩阵的形式
R = M * C
乘法必须是在向量(C)中挑选相应的列标签,并与M中的右列相乘,并将其存储在新的 Dataframe R C1 C2 C3 C4中...... R1 R2 R3 ..
请告知是否有更快的方法和最佳方式在Python中执行此任务。我应该使用numpy还是pandas,哪种是执行此任务的最佳方式
数据来自评论:
# matrix M
{'C1': {'R1': 0.007262922, 'R2': 0.161176178, 'R3': 0.036416265, 'R4': 0.088695854},
'C2': {'R1': 0.00771423, 'R2': 0.151682709, 'R3': 0.038982008, 'R4': 0.083075743},
'C3': {'R1': 0.00464326, 'R2': 0.104005096, 'R3': 0.040155884, 'R4': 0.085256067},
'C4': {'R1': 0.006368696, 'R2': 0.189279811, 'R3': 0.025380049, 'R4': 0.019488307},
'C5': {'R1': 0.007190279, 'R2': 0.219102692, 'R3': 0.020208962, 'R4': 0.023091423},
'C6': {'R1': 0.012902197, 'R2': 0.188676133, 'R3': 0.022958391, 'R4': 0.024071596}}
# vector C
{'C3': 1.1, 'C1': 3.2, 'C6': 2.4, 'C5': 4.0, 'C2': 3.0, 'C4': 9.0}
字符串
1条答案
按热度按时间smtd7mpg1#
您可以在这里将
pd.DataFrame.mul
与pd.DataFrame
和pd.Series
一起使用。这将通过匹配两个变量中的轴索引来相乘。字符串