我正在使用tidytext
(和tidyverse
)分析一些文本数据(如Tidy Text Mining with R)。用纯文本输入的纯文本输入的简单部分标记
我输入的文本文件,myfile.txt
,看起来是这样的:
# Section 1 Name
Lorem ipsum dolor
sit amet ... (et cetera)
# Section 2 Name
<multiple lines here again>
与60层左右的部分。
我想生成一个列section_name
与字符串"Category 1 Name"
或"Category 2 Name"
作为相应的行的值。例如,我有
library(tidyverse)
library(tidytext)
library(stringr)
fname <- "myfile.txt"
all_text <- readLines(fname)
all_lines <- tibble(text = all_text)
tidiedtext <- all_lines %>%
mutate(linenumber = row_number(),
section_id = cumsum(str_detect(text, regex("^#", ignore_case = TRUE)))) %>%
filter(!str_detect(text, regex("^#"))) %>%
ungroup()
这增加了一列中tidiedtext
对于每行相应的节号。
是否可以添加一行到调用mutate()
添加这样的列?还是有另一种方法我应该使用?
谢谢!这几乎是我正在寻找的。 – weinerjm