R 将数据集与“合并”;“数据帧”;,colname正在从;为什么?
我在数据集中发现了一些东西,我不明白为什么会发生。这里我复制了数据集。当我将两个数据帧合并为一个数据帧时;正在更改为点“”,但只有在检查R 将数据集与“合并”;“数据帧”;,colname正在从;为什么?,r,R,我在数据集中发现了一些东西,我不明白为什么会发生。这里我复制了数据集。当我将两个数据帧合并为一个数据帧时;正在更改为点“”,但只有在检查?data.frame函数时,才会发生这种情况。它有check.names参数,默认情况下该参数设置为TRUE 检查名称 必然的如果为TRUE,则检查数据框中变量的名称,以确保它们在语法上是有效的变量名称,并且不重复。如有必要,可(通过make.names)对其进行调整,以使其保持一致 这意味着它尝试为您传递的数据创建语法上有效的列名 什么是语法上有效的名称在?
?data.frame
函数时,才会发生这种情况。它有check.names
参数,默认情况下该参数设置为TRUE
检查名称必然的如果为TRUE,则检查数据框中变量的名称,以确保它们在语法上是有效的变量名称,并且不重复。如有必要,可(通过make.names)对其进行调整,以使其保持一致 这意味着它尝试为您传递的数据创建语法上有效的列名 什么是语法上有效的名称在
?make.names
语法上有效的名称由字母、数字和点或下划线字符组成,以字母或点开头,后面不跟数字。“.2way”等名称无效,保留字也无效。如有必要,在字符“X”前面加上前缀。所有无效字符都转换为“”
因此,所有带有空格或分号的列名都将替换为点cbind
没有此类参数,因此它允许语法无效的列名
如果希望data.frame
允许此操作,请关闭check.names
data.frame(dfmeta,dd, check.names = FALSE)
# b.t bb Bacteria;p Bacteroidetes;c Bacteroidia;o Bacteria;p Firmicutes;c Clostridia;o
#1 1 A 2 5
#2 2 B 3 6
#3 3 C 4 7
# Bacteria;p Bacteroidetes;c Bacteroidia;o
#1 2
#2 6
#3 9
data.frame(dfmeta,dd, check.names = FALSE)
# b.t bb Bacteria;p Bacteroidetes;c Bacteroidia;o Bacteria;p Firmicutes;c Clostridia;o
#1 1 A 2 5
#2 2 B 3 6
#3 3 C 4 7
# Bacteria;p Bacteroidetes;c Bacteroidia;o
#1 2
#2 6
#3 9