r - 为什么在使用 read.csv 时将 X 添加到数据框变量名称中?

标签 r dataframe names read.table

当我使用 read.csv()函数在 R为了加载数据,我经常发现变量名中添加了一个 X。我想我几乎总是在第一个变量中看到它,但我可能是错的。

一开始我以为R可能这样做是因为我在变量名的开头有一个空格 - 我没有。

其次,我在某处读到如果你有一个以数字开头的变量,或者是一个非常短的变量名,R会加X。变量名都是文本,这个变量名的长度是12个字符,所以不短。

现在,这纯粹是一种烦恼。我可以重命名该列,但它确实增加了一个步骤,尽管很小。

有没有办法防止流氓 X 渗入我的数据框?

这是我的原始代码:

df <- read.csv("/file/location.filecsv", header=T, sep=",")

这是有问题的变量:
str(orders)
'data.frame':   2620276 obs. of  26 variables:
 $ X.OrderDetailID    : Factor w/ 2620193 levels "(2620182 row(s) affected)",..: 105845

最佳答案

read.tableread.csv有一个 check.names=您可以设置为 FALSE 的参数.

例如,尝试使用仅包含标题的输入:

> read.csv(text = "a,1,b")
[1] a  X1 b 
<0 rows> (or 0-length row.names)

相对
> read.csv(text = "a,1,b", check.names = FALSE)
[1] a 1 b
<0 rows> (or 0-length row.names)

关于r - 为什么在使用 read.csv 时将 X 添加到数据框变量名称中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9098245/

相关文章:

如果不存在句点,MySQL 将句点添加到名字首字母中

r - 将字符传递给公式

r - 在 R 的正则表达式中使用组和反向引用 - stringr::str_replace

python - 在 python 中使用列表创建 json 数组

python - 具有较小数据框随机列的大型数据框(Pandas)

r - 更改列表的 'names' 属性

r - 广义相加模型data.frame.default错误: attempting to apply nonfunction

r - 可以在 roxygen2 代码块中使用换行符吗?

python - "A value is trying to be set on a copy of a slice from a DataFrame"尝试设置数据帧值时出现警告

R 使用 lapply() 来填充和命名数据框列表中的一列