我正在使用一列格式为字符串的网址向量,每个网址用逗号分隔:
column_with_urls
[“url.a,url.b,url.c”]
[“url.d,url.e,url.f”]
我想使用tidytext::unnest_tokens()
R函数将这些函数分成每行一个url(尽管我对其他优选的基于R的解决方案持开放态度)。我已经阅读了文档here,但我无法确定是否可以/建议输入单个字符进行拆分。
我的想法就像unnest_tokens(url, column_with_urls, by = ',')
。有没有办法指定那种论点和/或更好的方法来解决这个问题?
我想要的输出是一个数据帧,每行有一个url(原始行的所有其他数据都复制到每一行):
URL
url.a
url.b
url.c
...
提前致谢。
答案 0 :(得分:4)
unnest_tokens
函数可以选择拆分正则表达式模式。下面是使用此选项在逗号上拆分的示例语法(您也可以将其用于更复杂的模式)。
请注意,这会将输入数据的类转换为tibble
my_df = data.frame(id=1:2, urls=c("url.a, url.b, url.c",
"url.d, url.e, url.f"))
tidytext::unnest_tokens(my_df, out, urls, token = 'regex', pattern=",")
# # A tibble: 6 × 2
# id out
# <int> <chr>
# 1 1 url.a
# 2 1 url.b
# 3 1 url.c
# 4 2 url.d
# 5 2 url.e
# 6 2 url.f