我有多家公司约一年的股价数据。我要制作这1个文件。
我想通过仅导入每个文件的日期,收盘价和交易量来创建一个文件。 第一家公司没有问题,但是当它提出要求时却出错了。
> temp_df <- read.csv(paste(dir, file_names[1], sep = "/"), header = TRUE)
> head(temp_df)
Date High Low Open Close Volume Adj.Close
1 2017-07-03 7530 7300 7530 7500 143956 7407.061
2 2017-07-04 7500 7270 7410 7450 117718 7357.680
3 2017-07-05 7460 7280 7460 7350 113643 7258.919
4 2017-07-06 7400 7300 7310 7350 80115 7258.919
5 2017-07-07 7490 7310 7360 7430 75793 7337.928
6 2017-07-10 7530 7250 7450 7500 138471 7407.061
用于保存合并数据的kospi_data
kospi_data <- temp_df[,c('Date', 'Close', 'Volume')]
colnames(kospi_data) <- c("Date", "Close_1", "Volume_1")
head(kospi_data)
Date Close_1 Volume_1
1 2017-07-03 7500 143956
2 2017-07-04 7450 117718
3 2017-07-05 7350 113643
4 2017-07-06 7350 80115
5 2017-07-07 7430 75793
6 2017-07-10 7500 138471
> # merge
> ## key column: Date, (Close_i)& (Volume_i)
> for (i in 2:length(file_names)) {
+ temp_df <- read.csv(paste(dir, file_names[i], sep = "/"), header = TRUE)
+ temp_df2 <- temp_df[,c("Date", "Close", "Volume")]
+ colnames(temp_df2) <- c("Date", paste0("Close_", i), paste0("Volume_", i))
+ kospi_data <- merge(kospi_data, temp_df2[,c('Date', paste0("Close_", i),
paste0("Volume_", i))], by = 'Date', all = TRUE)
+ }
哪个会产生错误
Error in `[.data.frame`(temp_df, , c("Date", "Close", "Volume")) :
undefined columns selected