使用“xlsx"读取时间戳时出错包裹 [英] Error reading timestamps using "xlsx" package
本文介绍了使用“xlsx"读取时间戳时出错包裹的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Excel 文件中的数据看起来像
Data in Excel file looks like
TIMESTAMP TYPE BID BIDSIZ
2015-01-04 09:00:00 BID 365 10
2015-04-01 09:00:05 BID 367.8 55
2015-04-01 09:00:33 BID 365 10
2015-04-01 09:00:36 BID 367.8 55
当我运行以下代码时:
require(xlsx)
f1<-read.xlsx2("Canara_Data.xlsx", sheetName = "BID")
f1$TIMESTAMP<-as.POSIXct(f1$TIMESTAMP, format="%Y-%M-%D %H:%M:S")
查看它会导致 TIMESTAMP 看起来像
viewing it causes TIMESTAMP to look like
View(`f1`)
TIMESTAMP X. BID BIDSIZ
42008.375 BID 365 10
42095.37505787037 BID 367.8 55
42095.37538194445 BID 365 10
42095.37541666667 BID 367.8 55
str(f1)
# 'data.frame': 18214 obs. of 4 variables:
# $ TIMESTAMP: POSIXct, format: NA NA ...
# $ TYPE : Factor w/ 1 level "BID": 1 1 1 1 1 1 1 1 1 1 ...
# $ BID : Factor w/ 344 levels "365","365.1",..: 1 55 1 55 1 55 1 55 59 1 ...
# $ BIDSIZ : Factor w/ 1259 levels "1","10","100",..: 2 854 2 854 2 854 2 854 4 2
请帮助将 TIMESTAMP 作为日期读取,格式为%Y-%M-%D %H:%M:S",以及 BID 和 BIDSIZ 作为字符.
Please help in making TIMESTAMP to be read as date with the format "%Y-%M-%D %H:%M:S", and also BID and BIDSIZ as character.
推荐答案
Use Package readxl
Use Package readxl
excel_sheets("C:\\Users\\Gaurav Kumar\\Documents\\Canara_Data.xlsx")
grv<-read_excel("C:\\Users\\Gaurav Kumar\\Documents\\Canara_Data.xlsx", sheet = 1, col_names = TRUE, col_types = NULL, na = "", skip = 0)
它也会读取时间戳.它在将 excel 转换为 csv 时节省了大量时间,知道 CSV 在保存时间戳方面存在问题.
and it will read the Timestamps too. It saves huge time in converting the excel to csv, knowing CSV has a problem in saving timestamps.
TIMESTAMP EX BID BIDSIZ
1 2015-04-01 09:00:00 N 365.00 10
2 2015-04-01 09:00:05 N 367.80 55
3 2015-04-01 09:00:33 N 365.00 10
4 2015-04-01 09:00:36 N 367.80 55
5 2015-04-01 09:00:41 N 365.00 10
6 2015-04-01 09:00:41 N 367.80 55
这篇关于使用“xlsx"读取时间戳时出错包裹的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文