給定一個數據幀和包含操作以在列執行字符串:řdplyr transmute_串輸入錯誤
myDF <- as.data.frame(cbind(c(1,2,3,4),c(1,2,3,4),c(1,2,3,4)))
myString <- 'Added = V1 + V2'
調用「transmute_()」會給我所需的輸出:
transmute_(myDF,myString)
輸出:
Added = V1 + V2
1 2
2 4
3 6
4 8
太好了!但是,如果我立即重複相同的'transmute_()'函數,我會得到一個錯誤。
transmute_(myDF,myString)
Error: invalid (do_set) left-hand side to assignment
更改輸入字符串的列名仍然給出相同的錯誤,並將相同的字符串存儲在不同的變量中。但是,如果我更改新的列名稱,它將首次再次運行,然後出現錯誤(請參閱下面的示例)。
我不確定這是爲什麼。它似乎是一個臨時版本的輸出存儲在某處,錯誤是對此的反應,但我從來沒有遇到過這樣的事情。任何幫助理解它並繞過它(除了新列的明顯重命名)將不勝感激。
謝謝!
myString <- 'Added = V1 + V3'
transmute_(myDF,myString)
Error: invalid (do_set) left-hand side to assignment
myString2 <- 'Added = V1 + V3'
transmute_(myDF,myString2)
Error: invalid (do_set) left-hand side to assignment
myString2 <- 'Added_2 = V1 + V3'
transmute_(myDF,myString2)
Added_2 = V1 + V3
1 2
2 4
3 6
4 8