Манипулирование векторными значениями с использованием R [дубликата]

0

Мне нужна помощь для управления векторными значениями.

listID <- c(to_del$UnitCode_correct)
print(paste("Update unit set isDeleted=1 where UnitId in(",paste("'",listID,"'", collapse = " ,"),paste(")")))

Out put is...

"Update unit set isDeleted=1 where UnitId in( ' SOD0390306 ',' SOD0370274 ',' SOD0370275 ',' SOD0370276 ',' SOD0370277 ',' SOD0410257 ',' SOD0410256 ',' SOD0410255 ',' SOD0410258 ',' SOD0240282 ',' SOD0420517 ')"

Теперь мне нужно удалить эти лишние пробелы из каждой из идентификаторов (ex - 'SOD0390306', 'SOD0370274' должно быть похоже на 'SOD0390306', 'SOD0370274',)

Я очень старался сделать это, но не смог это исправить. также дайте мне знать, есть ли другой способ сделать это.

  • 4
    Используйте paste0 или paste("tralalala",sep="") .
Теги:
vector

1 ответ

1
Лучший ответ

Используйте sep = "" и collapse = "," paste как paste ниже:

listID <- c('SOD0390306','SOD0370274','SOD0370275','SOD0370276','SOD0370277','SOD0410257','SOD0410256','SOD0410255','SOD0410258','SOD0240282','SOD0420517')
print(paste("Update unit set isDeleted=1 where UnitId in (",paste("'",listID,"'", collapse = ",", sep=""),paste(")"), sep=""))

Выход:

"Update unit set isDeleted=1 where UnitId in ('SOD0390306','SOD0370274','SOD0370275','SOD0370276','SOD0370277','SOD0410257','SOD0410256','SOD0410255','SOD0410258','SOD0240282','SOD0420517')"

Надеюсь, это было полезно.

  • 0
    да, sep="" отсутствует в коде. Просто нужно уточнить, какой лучший способ сделать это - paste0 или добавить аргумент sep="" в коде?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню