Функция для использования "-" в качестве текста - PullRequest
0 голосов
/ 13 февраля 2020

У меня проблема в R.

У меня есть данные, где у меня разные регионы. Ниже приведен пример, и это фактические имена, а не значения.

D1$Regions = c(Ab, Ba, Da-Cd, Db-a, Da-Aa)

Если я хочу использовать только регион Da-Cd и при попытке выбрать только этот регион, я получаю сообщение об ошибке.

D-C<-D1[D1$Regions =="Da-Cd",]

Я получаю следующую ошибку:

Error in D - C <- D1[D1$Region == "Da-Cd", ] : 
  object 'Da' not found

Я предполагаю, что это потому, что она пытается вычесть C из D, но в этом случае реальное имя региона - D- C. Что я могу сделать, чтобы выбрать только этот регион? Могу ли я сделать это без переименования региона?

В моих данных у меня есть несколько регионов с "-" между буквами. Будет хорошо, если "-" будет удалено для всех разных регионов.

Я пытался использовать D1 $ Region как символ и как фактор, но это не помогает.

Благодаря.

Ответы [ 2 ]

2 голосов
/ 13 февраля 2020

- не должно использоваться в имени, поскольку оно зарезервировано для оператора вычитания; зарезервировано / незаконно . Но вы можете обойти это, окружив имя недопустимыми символами ``, хотя в некоторых (всех?) Контекстах будет достаточно более знакомого "".

`D-C` <- D1[D1$Regions =="Da-Cd",]
1 голос
/ 13 февраля 2020

R читает Da-Cd как Da минус Cd. Я бы предложил использовать символы в качестве имен для регионов, например c("Ab", "Ba", "Da-Cd", "Db-a", "Da-Aa")

...