2016-09-26 4 views
0

Я заметил, что R изменяет имена столбцов, когда они могут быть аргументами. Например,R cor изменяет имена переменных

foo.df <- data.frame("for" = rnorm(100,0,1), "else"=rnorm(100,2,0.1)) 
foo.cor.df <- cor(foo.df) 

Колонны в полученной матрице являются «для». и "еще". суффикс с периодами. Это документировано? Есть ли решение, отличное от простого удаления имен новых столбцов?

+2

Это зарезервированные слова. См. '? Зарезервировано' и'? Make.names'. – joran

ответ

3

for и else являются одними из зарезервированных слов в R и используются ими, поскольку имена в фрейме данных недопустимы. См ?data.frame и check.names аргумент, который направляет вас к ?make.names, который имеет:

Details: 

    A syntactically valid name consists of letters, numbers and the 
    dot or underline characters and starts with a letter or the dot 
    not followed by a number. Names such as ‘".2way"’ are not valid, 
    and neither are the reserved words. 

отметить последнюю строку.

Добавлен файл ., чтобы сделать имена действительными.

Смежные вопросы