【发布时间】:2022-01-14 19:37:18
【问题描述】:
我有一个相当直截了当的问题,我希望有一个我还没有偶然发现的非常简单的答案。
我正在尝试使用 tidyr::separate() 从单个字符串列(使用逗号作为分隔符)在 data.frame 中创建两列。问题是数据有多个逗号;但是,最左边的列周围有引号。有没有办法在尊重引号内的内容的同时将此值分成两列?
#trying to re-create the issue
band_members <- data.frame(col = paste0('"Paul,George,John,Ringo','"',',','Beatles'))
print(band_members)
----------------------------------
col
----------------------------------
"Paul,George,John,Ringo",Beatles
----------------------------------
#trying to separate
new_dat <- band_members %>% tidyr::separate(col = col,into = c('members','band'),sep = ',')
print(new_dat)
------------------
members band
--------- --------
"Paul George
------------------
^ 这并不理想。 我想要什么(下):
------------------------------------
members band
-------------------------- ---------
"Paul,George,John,Ringo" Beatles
------------------------------------
任何帮助将不胜感激!
【问题讨论】: