如何用R从DataFrame导出单元格内容为HTML并按对应列命名文件?
解决方案
你原来的循环只单独遍历了content列,没法关联到对应行的names值,下面两种方法都能解决问题:
方法一:修改for循环按行索引遍历
直接通过行索引来同时获取每行的文件名和内容:
# 遍历DataFrame的每一行索引 for (i in seq(nrow(df))) { # 拼接出带.html后缀的文件名 filename <- paste0(df$names[i], ".html") # 将对应行的内容写入文件 writeLines(df$content[i], filename) }
方法二:用purrr包的map2函数(更简洁)
如果习惯用R的向量化操作,可以用purrr的map2同时遍历两列:
# 未安装purrr的话先执行下面这行 # install.packages("purrr") library(purrr) # 同时遍历names和content,逐个生成文件 map2(df$names, df$content, function(name, content) { writeLines(content, paste0(name, ".html")) })
运行任意一种方法后,你的工作目录里就会生成alpha.html、beta.html等5个文件,每个文件的内容对应content列里的HTML代码。
内容的提问来源于stack exchange,提问作者Fiesto
相关产品推荐
相关产品推荐

