the*_*ist -3 string get r subset
假设我有一个子集化对象名称的字符串.例如:
foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)] #is currently represented as...
"foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)]"
Run Code Online (Sandbox Code Playgroud)
我想使用对象名称的字符串来调用子集化对象.
我试过用get()
:
get("foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)]")
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
Error in "foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)]":
object "foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)]" not found
Run Code Online (Sandbox Code Playgroud)
我假设有一种方法可以使用子集化对象(而不仅仅是一个对象名称,我知道它可以工作).
提前致谢!
正如@MrFlick的评论中提到的,你可以这样做:
eval(parse(text="foo$var1[foo$var2 < 10 & foo$var3 %in% c(0:100)]"))
Run Code Online (Sandbox Code Playgroud)
parse
将字符串转换为a expression
并eval
对其进行求值expression
.
虽然,这通常被认为R中一种不好的做法看 这里
归档时间: |
|
查看次数: |
167 次 |
最近记录: |