Вот как выглядят данные:
V1 V2 V3 V4 V5 V6 V7
1 1002000000 20180317 1PAC 000000000011000+ 33 33 6171985
2 1002000001 20050202 1PRM 000000000017376+ 20 20 7011985
3 1002000001 20050503 1PRM 000000000017376+ 20 20 7011985
4 1002000001 20050803 1PRM 000000000017376+ 21 21 7011985
5 1002000001 20051031 1PRM 000000000017376+ 21 21 7011985
6 1002000001 20060130 1PRM 000000000017376+ 21 21 7011985
Вот мой код:
ULtrans <- read.table("ULTRANS.txt", sep = "", header = F)
ULtrans <- ULtrans[,-c(5,6)] #remove unused columns
names(ULtrans) <- c("pol_num", "trans_date", "type", "amt", "iss_date")
convert_amt <- function(x){
as.integer(substr(x,1,nchar(x)-1))*ifelse(substr(x,nchar(x),nchar(x))=="-",-1,1)
}
ULtrans$amt <- convert_amt(as.character(ULtrans$amt))
ULtrans$trans_date <- ymd(ULtrans$trans_date)
ULtrans$iss_date <- mdy(ULtrans$iss_date)
Я пытался поместить это в метод, потому что я должен очистить несколько файлов таким же образом. Я поместил это в метод, который выглядит следующим образом:
format_trans <- function(x){
x[,-c(5,6)]
names(x) <- c("pol_num", "trans_date", "type", "amt", "iss_date")
convert_amt <- function(x){
as.integer(substr(x,1,nchar(x)-1))*ifelse(substr(x,nchar(x),nchar(x))=="-",-1,1)
}
x$amt <- convert_amt(as.character(x$amt))
x$trans_date <- ymd(x$trans_date)
x$iss_date <- mdy(x$iss_date)
}
Когда я пытаюсь использовать метод, который я сделал, он выдает мне предупреждающее сообщение. "Не удалось проанализировать все форматы. Форматы не найдены." Когда я не использую метод, я получаю очищенные даты и суммы транзакций.