问题很简单,但我找不到解决方案.
我想创建一个新的数据框,用于定义列的名称paste0.
理想情况下,我想做这样的事情(哪些不起作用).
mydataframe <- data.frame(id = 1,
paste0('Here_','my_','column_','name') = 'foo')
# Error: unexpected '=' in:
# "mydataframe <- data.frame(id = 1,
# paste0('Here_','my_','column_','name') ="
Run Code Online (Sandbox Code Playgroud)
另外,为什么不起作用?
Data.frame是一个函数,因此需要参数。这些参数不能是其他函数。例如,您不能定义像fn <- function(paste0('Hi_', 'how_are_you') = x) { x }. R 只是不能那样工作。
但是,您仍然可以在事后动态更改列名:
df <- data.frame(1, 'foo')
names(df) <- c('id', paste0('Here_','my_','column_','name'))
Run Code Online (Sandbox Code Playgroud)
那应该做你想做的。
优点:您可以简化您的贴如下:paste('Here', 'my', 'column', 'name', sep = '_')。
| 归档时间: |
|
| 查看次数: |
7861 次 |
| 最近记录: |