У меня есть столбец с именем Rooms
, в котором содержатся следующие данные:
'4+1' '3+1' '3' '2' '3+2' '4' '1' '2+1' '2+2' '5+1' '1+1' '6+1' '7+1' '5' '6' '0' '4+2' '8'
Я хотел разделить его на два столбца, в которых разделитель равен +
, и я сделал это, выполнив следующие действия:
splitingRoomsDF <- data.frame(do.call('rbind', strsplit(as.character(out$Rooms),'+',fixed=TRUE)),stringsAsFactors = FALSE)
Затем, чтобы объединить этот кадр данных с основными данными, я сделал:
data_final = cbind(out,splitingRoomsDF)
и когда я распечатал его, я получил это: 
Проблема с вышеприведенным выводом состоит в том, что если у нас есть значение ячейки в Rooms
, у которого нет разделителя +
, оно заменяет X1
и X2
на это значение, и я хотите, чтобы значение X2
было равно нулю, если Rooms
без +
разделителя. Я не уверен, что использование if-else - это то, что нужно делать здесь, но пока что с этим.
Итак, что я должен изменить в моих строках кода выше, чтобы точно сделать это изменение.
Я использую этот набор данных: https://www.kaggle.com/dragonduck/property-listings-in-kuala-lumpur