[英]R: retrieve dataframe name from another dataframe
我有一個數據框dataselect
,它告訴我在每種情況下要使用的數據dataselect
(我們稱其為相關數據框)。
該案例是動態分配的,因此哪個數據幀是相關的取決於該案例。
基於這種情況,我想將相關數據幀分配給指針“ relevantdf”。 我試過了:
datasetselect <- data.frame(case=c("case1","case2"),dataset=c("df1","df2"))
df1 <- data.frame(var1=letters[1:3],var2=1:3)
df2 <- data.frame(var1=letters[4:10],var2=4:10)
currentcase <- "case1"
relevantdf <- get(datasetselect[datasetselect$case == currentcase,"dataset"]) # relevantdf should point to df1
我不了解get()
函數或子設置過程是否有問題。
您快到了,問題是來自datasetselect的數據集列是一個因素,您只需要將其轉換為字符
您可以在數據集選擇的定義之后添加以下行:
datasetselect$dataset <- as.character(datasetselect$dataset)
您將獲得預期的輸出
> relevantdf
var1 var2
1 a 1
2 b 2
3 c 3
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.