有没有一种方法可以将矩阵路径格式的字符串转换为数字数组?

时间:2019-05-22 12:33:28

标签: r

我正在尝试将包含数字数据的矩阵路径的字符串版本传递给函数。

我尝试使用noquote()删除引号以及as.numeric()转换其类。但是后者只能通过强制返回NA。

以下是正常方式以及我希望其适用的方式的示例:

df = as.data.frame(matrix(rexp(25, rate = 0.01), 5)) # Random matrix
colnames(df) = c("a", "b", "c", "d", "e") # Giving it column names
df # Looks like this
dens_df_a.WORKS = density.default(df$a) # Making a density object
plot(dens_df_a.WORKS) # Plotting it nice and fresh
###   This works!   ###

#------------------------------------------------------------

matrix_path = noquote("df$a") # Assigning the same matrix path with no string quotes
dens_df_a.FAILS = density.default(matrix_path) # Doesn't create density object this time
###   This messes up :(  ###

要重新表达我的问题,如何在给定的代码中“激活” matrix_path,使其像前半部分一样起作用?

我收到错误消息“参数'x'必须是数字”(不是新闻),而不是正常工作。

这似乎没有必要尝试,但我想大规模地实现这一目标,而不是仅凭一条途径。因此,我并不是真正打算对50条路径进行硬编码。

0 个答案:

没有答案