【发布时间】:2013-06-09 13:29:09
【问题描述】:
我有一个 CSV 文件,其中包含一些名称为 "beauty & spas"、"american (new)" 等的列。当我在 R 中读取此文件并使用 names() 查看列名时,它们已转换为 "beauty...spas.1" 和 @ 987654325@。我如何防止他们被转换?我不想手动更正它们。
【问题讨论】:
标签: r
我有一个 CSV 文件,其中包含一些名称为 "beauty & spas"、"american (new)" 等的列。当我在 R 中读取此文件并使用 names() 查看列名时,它们已转换为 "beauty...spas.1" 和 @ 987654325@。我如何防止他们被转换?我不想手动更正它们。
【问题讨论】:
标签: r
如果您仔细阅读?read.table(或?read.csv)的文档,您会很快看到有一个名为check.names 的参数。您很可能希望将其设置为 FALSE。但请记住,这些在 R 中不是语法上有效的列名,因此您实际上可能更愿意将它们更改为 R 无论如何都能更顺利处理的名称。
【讨论】:
data$thing 来获取一列,但如果它有一个“语法无效”的名称,你必须引用它:data$"beauty & spas" 这有点尴尬.. . 请注意,您始终可以执行read.csv("test.csv",nrows=1, head=FALSE) 之类的操作来读取文件的第一行以获取列标题。