如何在rstudio中将行元素与列元素匹配并对其执行计算

如何在rstudio中将行元素与列元素匹配并对其执行计算,r,for-loop,match,rstudio,R,For Loop,Match,Rstudio,我想将dataframe列表中的列名“Name”与dataframe“Volume”的行名相匹配,并对列执行计算 我可以使用match或row.match进行此操作吗 我正试着做这样的事情 Total <- as.data.frame(matrix(0, ncol = 5, nrow = 5)) for (i in 1:5) { print(List$S.No[i] * 100) for (j in 1:5) { if (match(List$Name, col

我想将dataframe列表中的列名“Name”与dataframe“Volume”的行名相匹配,并对列执行计算

我可以使用match或row.match进行此操作吗

我正试着做这样的事情

Total <- as.data.frame(matrix(0, ncol = 5, nrow = 5))
for (i in 1:5) 
{
  print(List$S.No[i] * 100)
  for (j in 1:5) 
    {
    if (match(List$Name, colnames(Volume)), 2]))
    Value = Total + Volume[j]
    print(Value)
    }
}
print(Total) 

我不确定是否理解了你的回答。 我认为您必须以以下方式更正代码:

for (i in 1: length(List$Name)) {
    for (j in 1:dim(Volume)[2]) {
        if(List$Name[i]==colnames(Volume[j])) Total[,i]<-Total[,i]+Volume[,j]
    }
for(i in 1:length(List$Name)){
对于(1:dim(Volume)[2]){

如果(List$Name[i]==colnames(Volume[j])Total[,i]我已经解决了这个问题中面临的问题,即使用代码将行元素与列元素匹配

match(List$Name[i], names(Volume))

代码有一些错误。if(List_Sample$Name[i]==colnames(Volume[,j])中的错误Total[,i]对不起!if(List$Name[i]==colnames(Volume[j])。Remove',in colnames(Volume[,j])中的错误即使这样也不起作用。
[.data.frame
(Total,i)中的错误:选择未定义列这是错误。我认为这是循环的问题。我已解决了此问题中遇到的问题,即使用match(List$Name[I],names(Volume))将行元素与列匹配
match(List$Name[i], names(Volume))