Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为row.name和colname列表引用矩阵元素_R_Matrix_Dplyr_Vectorization_Apply - Fatal编程技术网

为row.name和colname列表引用矩阵元素

为row.name和colname列表引用矩阵元素,r,matrix,dplyr,vectorization,apply,R,Matrix,Dplyr,Vectorization,Apply,我有一个data.frame,由两列组成,分别对应于数值矩阵的行.names和colnames。例如: myDF <- data.frame(curr1 = sample(row.names(euro.cross), 5), curr2 = sample(colnames(euro.cross), 5)) 显然,我可以执行循环,但我正在寻找一种更优雅的编码方式。到目前为止,还没有成功地使用apply函数 谢谢 您可以将myDF转换为矩阵,并直接使用

我有一个
data.frame
,由两列组成,分别对应于数值矩阵的
行.names
colnames
。例如:

myDF <- data.frame(curr1 = sample(row.names(euro.cross), 5), 
                   curr2 = sample(colnames(euro.cross), 5))
显然,我可以执行循环,但我正在寻找一种更优雅的编码方式。到目前为止,还没有成功地使用apply函数


谢谢

您可以将
myDF
转换为矩阵,并直接使用它从
euro.cross
中提取元素,这将通过字符矩阵触发索引(更多详细信息,请参见
?“['
矩阵和数组部分),并执行您需要的操作:

euro.cross[as.matrix(myDF)]
# [1]  1.204921087 18.305448539  0.003070713  0.010992059  0.057234508

您可以将
myDF
转换为矩阵,并直接使用它从
euro.cross
中提取元素,这将通过字符矩阵触发索引(更多详细信息,请参见
?“['
矩阵和数组部分),并执行您需要的操作:

euro.cross[as.matrix(myDF)]
# [1]  1.204921087 18.305448539  0.003070713  0.010992059  0.057234508