r - 如何在 R 中导入多个 txt 文件并添加新标题?
问题描述
我有 8 个没有标题的文本文件全部保存,我的目标是将它们全部读入并将它们合并到一个文件中。我还想添加列名,但不断收到错误消息。到目前为止,我的代码是:
txt_files_ls = list.files(path=mypath, pattern="*.txt")
txt_files_df <- lapply(txt_files_ls, function(x) {read.table(file = x, header = F, sep ="\t",colnames(x))})
combined_df <- do.call("rbind", lapply(txt_files_df, as.data.frame))
colnames(combined_df)<-c("INSUR","POLICY","STREET","STREETPRED","STREETNAME","STREETTYPE","STREETPOSTD","STREETADD2","CITY","STATE","ZIP","ZIP4","EFFDATE","POLTYPE","PREM","FILL", "BVAMOUNT","Full","COUNT")
我一直收到此错误:名称错误(x)<-值:'names'属性[19]必须与向量[1]的长度相同
但我知道这些都是列并且它们是相同的。
我还试图有一个列,其中包含文本文件来自的 ID,但这是一个单独的问题。谢谢看到这个的人
解决方案
尝试这个:
txt_files_ls <- paste(mypath, list.files(path = mypath, pattern = "*.txt"), sep = "/")
txt_files_df_list <- vector("list", length(txt_files_ls))
txt_files_df_list <- lapply(txt_files_ls,
function(x){data.frame(read.table(file = x, header = F,
sep ="\t",colnames(x)))})
combined_df <- setNames(do.call("rbind", txt_files_df_list),
c("INSUR", "POLICY","STREET","STREETPRED","STREETNAME",
"STREETTYPE","STREETPOSTD","STREETADD2","CITY","STATE",
"ZIP","ZIP4","EFFDATE","POLTYPE","PREM","FILL", "BVAMOUNT",
"Full","COUNT"))
推荐阅读
- node.js - 从前端页面使用“获取”重定向的问题
- javascript - 每次我传递给它的道具的值发生变化时,如何在组件中调用 componantDidMount
- python - 如何在python的dfply包中使用自定义函数
- flutter - 如何在构建中更新 TextEditingController 文本?
- python - 理解 scikit 中的问题 learn in Python
- python-3.x - 当试图让 yahoo_fin 返回代码列表的价格时,是什么导致了这个问题?
- filter - 从过滤页面中删除由 Yoast SEO 插件添加的 rel canonical
- java - 当我在没有将电缆插入 android studio 的情况下测试我的应用程序时出现 Android 应用程序错误
- pine-script - 对 plotshape 使用条件 if 语句
- python - 在Python中使用正则表达式获取字符之前/之后的单词