小编use*_*887的帖子

R中迄今为止的整数数据帧

我有一个包含10个日期的数据框,我将其作为整数读入R中.这是数据框:

19820509
19550503
20080505
19590505
19940517
19690504
20050420
20060503
19840427
19550513
Run Code Online (Sandbox Code Playgroud)

我们称之为df.

我在这里尝试了几行不同的代码,只需将每个值更改为R中的日期格式,如下所示: "1982-05-09"

df <-  as.Date(df, "%Y%m%d")
Run Code Online (Sandbox Code Playgroud)

不起作用,也不起作用

 df <- as.POSIXlt(df, format = "%Y/%m/%d")
Run Code Online (Sandbox Code Playgroud)

要么

df <- as.POSIXct(df), format = "%Y/%m/%d", origin = "19820509")
Run Code Online (Sandbox Code Playgroud)

我一直收到一条错误,上面写着"不知道如何将'df'转换为类"date"或任何一种POSIX格式.

我觉得这会更简单.有任何想法吗?

谢谢.

r

9
推荐指数
2
解决办法
3万
查看次数

当两个图表具有相同的X轴时,在x轴上对齐双线图和条形图.GGPLOT2

我今天已经尝试了很长一段时间,但仍然无法通过X轴将两种不同的图表类型对齐,这些图表是相同的.当两个图表具有相同的X轴时,我只需要条形图顶部的双线图表.

下面的数据以及我到目前为止编写的代码以及一些不同的尝试.

我的数据:

Date <- c("2015-07-22", "2015-07-23", "2015-07-24", "2015-07-25", "2015-07-26", "2015-07-27", "2015-07-28", "2015-07-29", "2015-07-30", "2015-07-31", "2015-08-01", "2015-08-02", "2015-08-03", "2015-08-04", "2015-08-05")

Mean_temp12z <- c(66.6, 64.6, 67.6, 69.6, 72.0, 71.8, 73.0, 72.2, 72.8, 71.8, 69.4, 64.2, 61.2, 62.0, 63.4)

Mean_temp0z <- c(62.8, 65.0, 67.4, 71.6, 72.4, 71.6, 71.0, 71.8, 71.6, 69.6, 69.2, 66.2, 60.6, 63.6, 66.4)  

temp_deltalow <- c( 3.8, -0.4,  0.2, -2.0, -0.4,  0.2,  2.0,  0.4,  1.2,  2.2,  0.2, -2.0,  0.6, -1.6, -3.0)


GFS_low_changes <- data.frame(Date, Mean_temp12z, Mean_temp0z, temp_deltalow)
Run Code Online (Sandbox Code Playgroud)

到目前为止我绘制的是一个双线图,显示的代码如下图所示:

low_line …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 gtable

8
推荐指数
2
解决办法
2845
查看次数

可以在dplyr中汇总而不是删除数据框中的其他列吗?

我有一个包含三列的数据框,我正在尝试一个简单的摘要来查找数据框中每个城市的最高温度,同时还保留每个最高温度的日期.

这是数据框:

我们称之为maxT

  new.ID       Date   Max_TemperatureF
1     TUS 1960-04-05               87
2     TUS 1984-04-24               86
3     TUS 1972-04-01               75
4     TUS 2006-04-14               91
5     TUS 2000-05-03               96
6     PHX 1960-04-05               93
7     PHX 1984-04-24               93
8     PHX 1972-04-01               84
9     PHX 2006-04-14               91
10    PHX 2000-05-03               99
11    LAS 1960-04-05               91
12    LAS 1984-04-24               86
13    LAS 1972-04-01               81
14    LAS 2006-04-14               81
15    LAS 2000-05-03               98
16    LAX 1960-04-05               72
17    LAX 1984-04-24               69
18    LAX 1972-04-01               73
19    LAX …
Run Code Online (Sandbox Code Playgroud)

r

5
推荐指数
1
解决办法
1988
查看次数

有条件的条形图着色与R中的向量

我试图用输入作为向量创建一个带有负值和正值的简单条形图.我希望条形图显示红色的正值和蓝色的负值.我明白这个问题很简单,但我似乎无法弄明白.

这是我的矢量:

x <- (1.9230769,  1.2961538,  0.2576923, -1.5500000, -1.3192308, 
0.2192308,  1.8346154, 1.6038462,  2.5653846,  4.1423077)
Run Code Online (Sandbox Code Playgroud)

我尝试过代码:

barplot(x, ylim=c(-8,8), if(x>0) {col="red"} else {col="blue"})
Run Code Online (Sandbox Code Playgroud)

但我不断收到错误消息

"在if(x> 0){:条件长度> 1且只使用第一个元素"

我怎样才能让它理解贯穿整个矢量并用红色和蓝色有条件地绘制它?

谢谢,

亚当

r bar-chart

4
推荐指数
1
解决办法
4982
查看次数

R中部分对象名称的过滤器或子集列表

我有一个包含417个数据框的列表.每个数据框在列表中都有一个单独的名称,以"Dec 1981"开头,以"2016年8月"结尾.对象按时间顺序排列.

我想按月名称对该列表进行子集或过滤.例如,使用Jan对象(数据框)创建一个新的列表对象.我的名单是SST_list,到目前为止我尝试了一些不同的解决方案.这些都不起作用.

Jan_data <- SST_list[names(SST_list)=="Jan"]  
Run Code Online (Sandbox Code Playgroud)

什么都没有,但是可以预料.我尝试了一些使用grep和grepl的代码,但那些崩溃了我的R会话.

我也试过了

Jan_data <- lapply(SST_list, "[","Jan")
Run Code Online (Sandbox Code Playgroud)

但那里没有运气.

这似乎应该是一个简单的任务,但我遇到了很多麻烦.

r

3
推荐指数
1
解决办法
1375
查看次数

在ggplot2中创建多线图时,如何使一根线比另一根线更粗?

我有一个简单的融化数据框,其中包含5个变量,并在ggplot2的多线图中绘制。我在下面发布了我的代码,我觉得这个问题的答案应该很简单,但是我找不到答案。

如果我在同一张图表上同时绘制5条线,是否可以使其中一条线(在这种情况下为均值)比其他线更大/更大?

如您在底部的代码中所看到的,我将线的大小指定为2,这使所有5条线的大小都为2。但是我希望具有均值线(在刻度颜色中指定为黑色的线)函数)变得比其他行大。

我尝试将大小设置为,size = c(2,2,2,2,3)但是ggplot2不喜欢那样。

   FiveLineGraph <- ggplot(data= df, aes(x= Date, y=Temperature, group= model, colour= model)) +
  geom_line(size= 2) +
  scale_colour_manual(values = c("red","blue", "green", "gold","black"))
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

非常感谢您的帮助。

谢谢。

r ggplot2

2
推荐指数
1
解决办法
2234
查看次数

如何在 ggplot2 分组条形图中标记每个条形上的负值和正值

我试图在 ggplot2 中的分组条形图中标记每个条形。每组按日期聚合,每个日期有 4 个值(条形)。我已经看到并且实际上有自己的代码可以正确标记单个负条和正条,但我无法让分组条形图正常工作。这些值始终位于条形内部。

我的数据:

    Date <- c("2016-02-19", "2016-02-20", "2016-02-21", "2016-02-22", "2016-02-23", "2016-02-24", "2016-02-25", "2016-02-26", "2016-02-27", "2016-02-28",
"2016-02-29", "2016-03-01", "2016-03-02", "2016-03-03", "2016-03-04")

Date <- as.Date(Date)

Model1 <- c(-0.6, -0.2, 0.1, 0.1, 0.4, -0.2, -1.7, 0.7, 3.6, 2.0, NA, NA, NA, NA, NA)

Model2 <- c(-0.5, -0.2, -0.5,  0.0,  0.0, -1.0, -0.9,  1.6,  3.6, -0.2,  2.1,  7.8,  3.5, -3.4, -8.1)

Model3 <- c( -0.7,  0.0,  0.2,  0.4,  0.8,  0.6,  0.8, -0.4, -0.6,  0.2,  0.1, -0.9, -0.5,  0.1,  0.3)

Model4 <- …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

2
推荐指数
1
解决办法
2219
查看次数

在 X 轴上排列的 ggplot2 图下方绘制单独数据表

我希望创建一个包含一个简单的多行 ggplot2 图的图,该图在图下方有一个单独(但相关)数据表,按图的 X 轴排列。数据表的列名确实与图表的 x 轴匹配(1 到 24 小时),但有一列专用于必要的行名。

这里分别是图表和数据表: ggplot2 图

为简洁起见,数据表在 16 小时被截断,但确实扩展到 24。 数据表

我整个早上都在 gridExtra 中尝试不同的解决方案,调整不同的参数,如 nrow、ncol、高度和宽度,但最简单的解决方案只是产生某种合理结果的解决方案。下面的代码和图片是我取得的最好成绩:

library(gridExtra)

p1 <- ggplot(load_forecast_plot, aes(group=Load_Type, y=Load_Values, x=Hour,  colour = Load_Type)) + 
  geom_line(size = 1) +
  scale_x_continuous(breaks = c(1:24))

p1 <- ggplotGrob(p1)

p2<-tableGrob(df)

grid.arrange(p1, p2, top = paste("Load and Weather Error Power Grid", Sys.Date()-1, sep = " "))

grid.draw(tableGrob(MISO_wx_PrevDay_error_test,theme=ttheme_minimal(base_size = 5)))
Run Code Online (Sandbox Code Playgroud)

其中产生: 在此处输入图片说明

我希望图表更大,而表格更小并尽可能沿 x 轴对齐。我查看了将表格转换为 ggplot2 对象的示例,但这些示例的绘图和表格中的数据与我的不同。

以下是我的可重现示例的数据。任何帮助深表感谢!谢谢你。

ggplot 图的数据:

dput(load_forecast_plot)
structure(list(Hour = c(1, 1, 1, 2, 2, 2, 3, 3, 3, …
Run Code Online (Sandbox Code Playgroud)

r ggplot2 gridextra

2
推荐指数
1
解决办法
940
查看次数

标签 统计

r ×8

ggplot2 ×4

bar-chart ×1

gridextra ×1

gtable ×1