分两步:
- 您可以使用
read.table
withfill=TRUE
来读取所有行(您也可以使用 readLines)
- 不带逗号作为分隔符处理。
代码是这样的:
aa <- read.table(text='John, Doe
Rebecca, Homes
Organization LLC',sep=',',fill=TRUE,colClasses='character')
## treat lines without comma
aa[nchar(aa$V2) ==0,] <-
do.call(rbind,strsplit(aa[nchar(aa$V2) ==0,]$V1,' ')) ## space as separator :I assume you
don't have compound name
> aa
V1 V2
1 John Doe
2 Rebecca Homes
3 Organization LLC
编辑 更好的方法:我使用正则表达式用逗号替换任何空格以具有正则分隔符。我假设您没有任何复合名称。
ff <- readLines(textConnection('John, Doe
Rebecca, Homes
Organization LLC'))
do.call(rbind,
strsplit(gsub('[ ]|, |,[ ]',',',ff),','))