首页 > 解决方案 > 根据名称向量(字符向量)重命名数据框中的列

问题描述

我对使用 R 很陌生,我确信有一个简单的解决方案可以解决这个问题,但我正在为此拉扯头发。

我正在阅读一个没有列名的固定宽度文件 (fwf)。我将大部分列名作为单独的分隔文件中的一个字段。我正在尝试将分隔文件中的列名分配给 fwf。

我已将保存的列名导入到一个名为VNames(例如 chr [1:225] "NameAAA" "NameAAB" NameAAC"...)的字符向量中,我想将这些名称应用为read.fwf

CombMatrix <- read.fwf(
   file = fixedFileName,
   width = c(32, 3, 5, 15, rep(1, 225)),
   col.names = ("ID", "Gender", "Score", "Department", VNames),
   na.string = "",
   fill = TRUE,
   strip.white = TRUE)

我不断收到错误

错误:

意外的 ',' in: " width=c(32,3,5,15,rep(1, 225)), col.names = ("ID","

提前感谢您对此的任何帮助!

标签: r

解决方案


col.names 参数需要一个名称向量才能工作,您没有将它们放入向量中。

尝试这个:

CombMatrix <- read.fwf(
   file = fixedFileName,
   width=c(32,3,5,15,rep(1, 225)),
   col.names = c("ID", "Gender", "Score", "Department", VNames),
   na.string="",
   fill=TRUE,
   strip.white=TRUE)

推荐阅读