我在數據框上運行apply函數,以便提取值大於-1的所有單元格的位置。但是,在我的結果中,每列都有不同數量的單元格,因此R不允許我將結果轉換爲數據框。如何添加NA值以根據不同長度的矢量創建數據矩陣?
樣品我原來的數據幀(實際有超過500列):
Slopes<-data.frame(B1=5:495,B2=-100:390, B3=10:500,B4=-200:290)
row.names(Slopes)<-seq(0.01, 4.91, 0.01)
這是我跑過去的向量函數:
Z<-apply(Slopes, 2, function(x) which(x>-1))
我怎樣才能填補缺失的細胞與「NA」,以便我可以將這些結果轉換爲數據框?
另外我只需要添加這個編輯,因爲現在我已經成功地創建了數據框,我發現R返回了行號而不是行名。我可以對我的應用代碼進行任何更改,以返回行名稱嗎?
您想提取值還是位置? – A5C1D2H2I1M1N2O1R2T1
如果你想從'Z'到'data.frame',只需要'data.frame(lapply(Z,「length < - 」,max(lengths(Z))))''。 – A5C1D2H2I1M1N2O1R2T1
爲什麼不使用'which(斜率> -1,arr.ind = TRUE)'這將告訴你究竟在哪裏價值在斜坡 –