首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dplyr - Rename列[空]由readr创建

dplyr - Rename列[空]由readr创建
EN

Stack Overflow用户
提问于 2015-10-29 12:05:13
回答 1查看 2.3K关注 0票数 3

当使用readr_0.1.1读取缺少字段名的.csv文件时,名称将自动设置为[EMPTY]

代码语言:javascript
复制
library("readr")
library("dplyr")
df <- read_csv(",foo\n1,bar")

> names(df)
[1] "[EMPTY]" "foo" 

我试图使用"[EMPTY]"重命名dplyr_0.4.2,但找不到正确的解决方案。

我试过:

代码语言:javascript
复制
> rename(df, baz = [EMPTY])
Error: unexpected '[' in "rename(df, baz = ["

> rename_(df, "baz" = "[EMPTY]")
Error in parse(text = x) : <text>:1:1: unexpected '['
1: [
    ^

正确的方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-29 16:51:22

您可以使用

代码语言:javascript
复制
dplyr::rename(df, baz = `[EMPTY]`)

我们使用的是后台,而不是引号,因为我们指的是“非标准变量名”,例如:

代码语言:javascript
复制
df$`[EMPTY]`

来自?Quotes

标识符由字母序列、数字序列、句号(.)组成。还有下划线。它们不能以数字或下划线开头,也不能以句点后面的数字开始。保留字不是有效的标识符。 字母的定义取决于当前的区域设置,但只有ASCII数字被认为是数字。 这类标识符也称为句法名称,可直接用于R代码中。通常情况下,只要引用其他名称,就可以使用它们。首选的引号是回勾(`),离开通常会使用它,但在许多情况下可以使用单引号或双引号(因为字符常量通常会转换为名称)。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33413762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档