将列表的每个元素保存到文本文件 [英] Save each element of a list to text file

查看:518
本文介绍了将列表的每个元素保存到文本文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含许多csv文件的文件夹.我这样看他们

I have a folder with many csv files. I read them like this

files <-  list.files(pattern = "*.csv")
  [1] "ETo_1980.csv" "ETo_1981.csv" "ETo_1982.csv" "ETo_1983.csv" "ETo_1984.csv" "ETo_1985.csv"
  [7] "ETo_1986.csv" "ETo_1987.csv" "ETo_1988.csv" "ETo_1989.csv" "ETo_1990.csv" "ETo_1991.csv"
  [13] "ETo_1992.csv" "ETo_1993.csv" "ETo_1994.csv" "ETo_1995.csv" "ETo_1996.csv" "ETo_1997.csv"
  [19] "ETo_1998.csv" "ETo_1999.csv" "ETo_2000.csv" "ETo_2001.csv" "ETo_2002.csv" "ETo_2003.csv"
  [25] "ETo_2004.csv" "ETo_2005.csv" "ETo_2006.csv" "ETo_2007.csv" "ETo_2008.csv" "ETo_2009.csv"
  [31] "ETo_2010.csv" "ETo_2011.csv" "ETo_2012.csv" "ETo_2013.csv" "ETo_2014.csv" "ETo_2015.csv

现在我读了它们:

DT <- lapply(files, fread)

每个文件,我都想另存为文本文件(.txt).如何将每个文件另存为具有相同名称的.txt?

Each file, I want to save as a text file (.txt). How can I save each file as .txt with the same name?

lapply(DT, function(x) { write.table()})?

推荐答案

我生成了一个名为xlist,其中包含两个名为ab的对象.在循环中使用paste0可自动命名文本文件,如下所示:a.txtb.txt. write.table执行文件的实际保存.

I generated a list named x containing two objects named a and b. Use paste0 in a loop to automatically name the text files like this: a.txt and b.txt. write.table performs the actual saving of the files.

x <- list(a=c(1,2), b=c(3,4))

for(i in 1:length(x)){
  write.table(x[[i]], paste0(names(x)[i], ".txt"), col.names = F)
}

使用list.files查看文件是否已保存在您的工作目录中.

Use list.files to see if the files have been saved in your working directory.

list.files()
[1] "a.txt" "b.txt"

这篇关于将列表的每个元素保存到文本文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆