在R中,我使用for循環遍歷大數據框,嘗試將第*列第7列中的整數放入另一個矩陣中的特定索引。特定索引對應於大數據框中的索引(再次在第* i *行中,而是第2和第4列)。例如,假設我的數據幀有data_frame [1,2] = 5,data_frame [1,4] = 12,data_frame [1,7] = 375。我想把375放入索引中的行,其中行的名稱爲5,列的名稱爲12.R中的數據框到矩陣
但是,問題(我認爲)是當我做col_index = which(colnames(matrix) == data_frame [1,2]),它返回整數0.列名在技術上是5,但我注意到它只適用於我做col_index = which(colnames(matrix)==「5」)。我怎樣才能確保(在我的for循環)data_frame [我,2]對應於「5」?
數據被保存爲「走出去」我的矩陣,我想將數據放在被稱爲「M」
m=matrix(nrow=87,ncol=87)
fips=sprintf("%03d",seq(1,173,by=2))
colnames(m)=fips
rownames(m)=fips
m[1:40,1:40]
接下來,第三列是等於27
for(i in 8:2446)
{
if(out[i,3]==27)
{
out_col=out[i,4]
out_row=out[i,2]
moves=out[i,7]
col_index=which(colnames(m)==paste(out_col))
row_index=which(rownames(m)==paste(out_row))
m[row_index,col_index]=moves
}
}
條件
對不起格式。它將數字放在矩陣中,但它們不是正確的數字,我無法弄清楚什麼是錯的。任何幫助將非常感激!