楼主: 08liurenxing
6112 10

[问答] R语言的时间格式等问题 [推广有奖]

  • 0关注
  • 2粉丝

已卖:1254份资源

讲师

16%

还不是VIP/贵宾

-

威望
0
论坛币
4932 个
通用积分
6.5679
学术水平
8 点
热心指数
11 点
信用等级
5 点
经验
7740 点
帖子
424
精华
0
在线时间
153 小时
注册时间
2009-11-9
最后登录
2023-12-9

楼主
08liurenxing 发表于 2015-8-9 11:55:30 |AI写论文
20论坛币
感谢帮助;
我需要从1大个数据中提取两天的数据进行分析;画出直方图。
结果在数据导入的时候,时间格式变换过程中遇到了很多问题。
power.txt 是我摘取了几个数据试验我语句所用的,还没等到在大数据上用,小数据就卡壳了,请教高手了。
consumption这个文件是所有完整的数据,需要从所有年份中选取2007年02月01日到02日两天的数据进行分析。
下面是我用power.txt 选取两天数据进行分析的过程

#数据导入:

data <- read.table("power.txt", sep=";",  header=TRUE)


#这句顺利导入,没什么问题;用data查看数据后无误;


data$Date <- as.Date(data$Date, "%d/%m/%y")
#这句改变格式后,2006年莫名其妙成为了2020年,神奇,详情请看图片2;不知道哪里错误了,请教。因为这里错误了,下面三句也无法测试对错了。无奈,着急!帮忙解决者给高分,谢谢了!

1问,为啥时间变了。
startdate <- as.Date("2006-12-16")
enddate <- as.Date("2006-12-17")
newdata <- data[which(data$date>=startdate&data$date<=enddate),]


#开始作图;
hist(newdata$Global_active_power, col="green")




这句测试后出现这个问题(提示

> hist(newdata$Global_active_power, col="green")

Error in hist.default(newdata$Global_active_power, col = "green") :
  'x'必需为数值2问,为啥出现这个;需为数值。。。。?






2.jpg (46.59 KB)

2.jpg

1.jpg (42.87 KB)

1.jpg

consumption.zip
下载链接: https://bbs.pinggu.org/a-1849986.html

17.65 MB

本附件包括:

  • consumption.txt

power.txt

724 Bytes

最佳答案

关键词:R语言 等问题 consumption Power 数据导入

沙发
诸葛山下 发表于 2015-8-9 11:55:31
data <- read.table('power.txt', sep=';', header = TRUE)
data_Date <- as.Date(data$Date, format='%d/%m/%Y');data_Date
错误在于年份%Y设置错了。
我出来的数据是对的了!有图为证。

1.jpg (101.5 KB)

1.jpg

已有 1 人评分论坛币 收起 理由
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 20   查看全部评分

藤椅
08liurenxing 发表于 2015-8-9 12:20:49
顶起,请教高手,感谢!

板凳
诸葛山下 发表于 2015-8-9 12:28:53
解决思路很清晰啊,没看出有什么问题啊

报纸
08liurenxing 发表于 2015-8-9 12:35:36
可是搞不出来啊,疯掉了,本以为一个小时够了,搞了一天,查了n多资料,网上搜了N天,没招了,来坛里求助来了,高手快来呀!

地板
08liurenxing 发表于 2015-8-9 12:39:45
诸葛山下 发表于 2015-8-9 12:28
解决思路很清晰啊,没看出有什么问题啊
兄弟,麻烦帮我走走这个程序,看看是不是和我结果一样,我都想换个电脑试试

7
08liurenxing 发表于 2015-8-9 16:41:21
诸葛山下 发表于 2015-8-9 11:55
data
format='%d/%m/%Y')
单引号而非双引号;我的是双引号;R语言实战里用的也是双引号。另;format='%d/%m/%Y') Y 大写了,有关系吗。
5.jpg

8
bianleleren 学生认证  发表于 2015-8-9 18:37:40
不懂帮顶!

9
诸葛山下 发表于 2015-8-10 08:47:18
08liurenxing 发表于 2015-8-9 16:41
format='%d/%m/%Y')
单引号而非双引号;我的是双引号;R语言实战里用的也是双引号。另;format='%d/%m/% ...
引号单双无影响,R不区分!但是,Y是四位年份表示,y是两位年份表示。你的年份数据是四位的,你让它表示成两位能不错?

10
08liurenxing 发表于 2015-8-10 09:39:45
诸葛山下 发表于 2015-8-10 08:47
引号单双无影响,R不区分!但是,Y是四位年份表示,y是两位年份表示。你的年份数据是四位的,你让它表示成 ...
原来如此,受教了,感谢!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 22:20