我将股票数据的 csv 导入 R,股票代码的列名以数字开头并包含空格,例如“5560 JP”。读入 R 后,列名添加“X”,空格替换为“.”,例如“X5560.JP”。在 R 中完成所有工作后,我想将处理后的数据写回新的 csv,但是使用原始列名,例如“5560 JP”而不是“X5560.JP”,我该怎么做?
谢谢!
我将股票数据的 csv 导入 R,股票代码的列名以数字开头并包含空格,例如“5560 JP”。读入 R 后,列名添加“X”,空格替换为“.”,例如“X5560.JP”。在 R 中完成所有工作后,我想将处理后的数据写回新的 csv,但是使用原始列名,例如“5560 JP”而不是“X5560.JP”,我该怎么做?
谢谢!
当您使用 write.csv 或 write.table 将数据保存到 CSV 文件时,您可以通过设置col.names
参数将列名设置为您喜欢的任何名称。
但这假设您有可用的列名。一旦你读入数据并且 R 已经转换了名称,你就丢失了这些信息。为了解决这个问题,您可以禁止转换以获取列名:
df <- read.csv("mydata.csv", check.names=FALSE)
orig.cols <- colnames(df)
colnames(df) <- make.names(colnames(df))
[your original code]
write.csv(df, col.names=orig.cols)