2017-02-28 54 views
-1

我想動態地將一個新的對象命名爲某個對象的一個​​元素。如何通過R中元素的值來命名對象?

例如:

老對象:

df1 <- data.frame(R = c('2','2','2','2'), P = c('e','ss','ww','tt') 

新對象名稱應該是af2,而從'af2''2'應從df1$R被轉移或let's說df1[1]

要missunderstandings爲完全清楚:

如果

DF1 $ R = C( '5', '5', '5')

新對象的名稱應該是af5

謝謝你這麼多

+0

應該是什麼輸出如果'DF1 $ R = C( '5', '2',」 7')'? –

+1

如果你想這樣做,不要把這些對象放到全局環境中。把它們放到一個列表中。 – Roland

+0

@ Saurabh13,在這種情況下,df1 $ R的元素總是相等的,但要回答你的問題,應該是'af5' –

回答

0

請經過以下解決方案:

現在
df1 <- data.frame(R = c('2','2','2','2'), P = c('e','ss','ww','tt')) 

,具有名稱R取柱,並使用paste功能af結合,如下所示:

paste("af",df1$R[1],sep ="") 
[1] "af2" 
+0

在具體我需要它的方式:當我定義新對象(這裏af2)我的代碼將如下所示:af2 < - 這個想法應該是在這裏我不需要手動定義'af2'。我想我的對象(在行的開頭會自動命名,如:af(paste(df1 $ R [1])< -

+0

@ rimberd-這很好。你想在RHS端表達什麼樣的表達? –

相關問題