小编Jd *_*aba的帖子

在R中有效地将反斜杠转换为正斜杠

我正在寻找一种有效的方法来将反斜杠转换为R中的正斜杠.有时我从windows复制目录的链接,我得到这样的东西:

C:\Users\jd\Documents\folder\file.txt

如何快速将其更改为C:/Users/jd/Documents/folder/file.txt?我甚至无法将上述表达式视为字符.它抛出一个错误

"\ u在字符串开头没有十六进制数字时使用""C:\ u".

我知道R中的TAB功能有助于快速找到位置,但只是想知道是否还有其他工作.我也可以将工作目录更改为文件夹的位置.我只是在玩耍并尝试将反斜杠转换为正斜杠并且不是直截了当所以因为好奇而问这个.

r escaping filepath

51
推荐指数
9
解决办法
4万
查看次数

控制R中xtable输出的小数位数

我正在使用Rmd文件创建报告,我使用xtable包来创建表.xtable的输出显示最多2位数的小数位数.有没有办法控制xtable中的小数位?

我在Xtable的Rmd文件中使用的示例代码如下:

```{r, results='asis', message=FALSE, echo=FALSE}
source("../../R code/data analysis.R")
library(xtable)
library(plyr)
table1 <- xtable(t3,caption="Table showing the Mean discharge and mean gage height on each year on each month",digits=NULL)

print.xtable(table1,type="latex",comment = getOption("xtable.comment", FALSE))

```
Run Code Online (Sandbox Code Playgroud)

这个输出如下:

在此输入图像描述

在这里,我不想要年和月的任何小数位数.有没有办法控制这件事?

谢谢.

r xtable

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

在R中创建一个逻辑向量并使用哪个函数

我有一个包含三列的数据集.第一列是类型,第二列是区域,第三列是值.我想写一个逻辑向量,使得type = 1,area = 3和worth = 6.我能够使用子集创建数据帧,但我无法创建逻辑向量.

hello <- read.csv("type.csv")
hello1 <- subset(hello, type==1 & area ==3 & worth ==6)
Run Code Online (Sandbox Code Playgroud)

值列中有许多NA值.数据集是https://www.dropbox.com/s/gjjwmnr8uxmy18y/type.csv

谢谢.

Jdbaba

r

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

在R markdown文件上使用表格标题,使用knitr在pandoc中使用转换为pdf

我想知道是否可以在.Rmd文件中使用knitr使用表格标题,如图标题?

我看到了图标题的选项,但我看不到表格标题的选项.我也想删除诸如此类的消息"% latex table generated in R 2.15.2 by xtable 1.7-0 package % Wed Mar 06 15:02:11 2013".

我用X表创建表:我使用的示例代码如下:

```{r table2, results='asis', message=FALSE} 
library(xtable) 
print(xtable(head(iris))) 
``` 
Run Code Online (Sandbox Code Playgroud)

我通过pandoc处理后得到的表格如下:

在此输入图像描述

我试图在Rmd文件中使用message = FALSE来摆脱上面显示的消息.我还想知道是否可以在Rmd中自动添加表格的标题?

通过标题我的意思是下面的东西(这是图中的),图号自动更新.

此输出是pdf使用knitr创建的markdown文件生成的pdf快照.

在此输入图像描述

谢谢.

markdown r pandoc knitr

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

从R中的列名中删除点

我有一个包含多个列的数据框,我想删除列名称上的点.数据如下:

structure(list(JulDay = c(260.0208435, 260.0416565, 260.0625, 
260.0833435, 260.1041565, 260.125), i.46.j.8.k.1 = c(17.99964905, 
18.5903511, 22.93223381, 25.75687981, 25.78559113, 25.8169651
), i.47.j.8.k.1 = c(18.36571884, 21.15985107, 24.80698013, 25.75730324, 
25.78366089, 25.65381622), i.48.j.8.k.1 = c(18.45543289, 22.02331543, 
24.99463654, 25.5712738, 25.64232635, 25.66119385), i.46.j.8.k.2 = c(17.99798965, 
18.60897827, 22.95389748, 25.75719261, 25.78653336, 25.81692505
), i.47.j.8.k.2 = c(18.36762619, 21.17233467, 24.82248497, 25.75767899, 
25.7840023, 25.64115906), i.48.j.8.k.2 = c(18.45938683, 22.04619026, 
24.9859066, 25.56440544, 25.63998032, 25.66089439), i.46.j.8.k.3 = c(17.99430084, 
17.92090797, 19.67384911, 21.70389938, 23.67287827, 24.04380417
), i.47.j.8.k.3 = c(18.36631203, 19.82550049, 21.42166328, 23.76496887, 
24.87460899, 25.41026688), i.48.j.8.k.3 = c(18.44684792, 20.60981369, …
Run Code Online (Sandbox Code Playgroud)

r

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

仅在R中将ggplot上的x轴显示为月份

我这里有一个非常简单的问题.我有一个来自2009-2012的数据集.我想用facet绘制数据.我创建了多面图,如下所示.

R-代码

ggplot(al02428400,aes(x=date,y=as.numeric(Discharge)))+geom_line()+ylab("Discharge(cfs)")+facet_wrap(~Year,scales=("free_x"))+theme_bw()
Run Code Online (Sandbox Code Playgroud)

上述R代码的输出如下:

在此输入图像描述

在X轴上我只想显示月份.默认情况下,它显示月份和年份.有什么方法可以摆脱一年吗?

完全可重现的代码如下:

library(ggplot2)

url <- "http://nwis.waterdata.usgs.gov/usa/nwis/uv/?cb_00060=on&cb_00065=on&format=rdb&period=&begin_date=2009-01-01&end_date=2012-12-31&site_no=02428400"
download.file(url,destfile="Data load for stations/data/alabamariver-at-monroeville-2009.txt")

al02428400 <- read.table("Data load for stations/data/alabamariver-at-monroeville-2009.txt",header=T,skip=1,sep="\t")
head(al02428400)

sapply(al02428400,class)
al02428400 <- al02428400[-1,]

names(al02428400)<- c("Agency","SiteNo","Datetime", "TZ","Discharge","Status","Gageheight","gstatus")
al02428400$date <- strptime(al02428400$Datetime, format="%Y-%m-%d %H:%M")

al02428400$Discharge <- as.numeric(as.character(al02428400$Discharge))
al02428400$Year <- as.numeric(format(al02428400$date, "%Y"))
ggplot(al02428400,aes(x=date,y=as.numeric(Discharge)))+geom_line()+ylab("Discharge(cfs)")+facet_wrap(~Year,scales=("free_x"))+theme_bw()
Run Code Online (Sandbox Code Playgroud)

谢谢.

r ggplot2

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

R中的幂回归类似于excel

我有一个简单的数据集,我正在尝试使用功率趋势来最好地拟合数据.样本数据非常小,如下:

structure(list(Discharge = c(250, 300, 500, 700, 900), Downstream = c(0.3, 
0.3, 0.3, 0.3, 0.3), Age = c(1.32026239202165, 1.08595138888889, 
0.638899189814815, 0.455364583333333, 0.355935185185185)), .Names = c("Discharge", 
"Downstream", "Age"), row.names = c(NA, 5L), class = "data.frame")
Run Code Online (Sandbox Code Playgroud)

数据如下:

> new
  Discharge Downstream       Age
1       250        0.3 1.3202624
2       300        0.3 1.0859514
3       500        0.3 0.6388992
4       700        0.3 0.4553646
5       900        0.3 0.3559352
Run Code Online (Sandbox Code Playgroud)

我试图用上面的数据绘制 ggplot2

ggplot(new)+geom_point(aes(x=Discharge,y=Age))
Run Code Online (Sandbox Code Playgroud)

我可以添加线性线geom_smooth(method="lm")但我不知道我需要什么代码来显示电源线.

输出如下:

在此输入图像描述

如何在Excel中添加幂线性回归线?excel图如下所示:

在此输入图像描述

r ggplot2

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

在R(ggplot)中使用fortify函数时出错

我试图在R中使用fortify函数来绘制地图.但是我在处理数据时总是遇到错误.我使用以下代码读取形状文件:

shape <- readShapeSpatial("Lond_City/lond_city.shp")
Run Code Online (Sandbox Code Playgroud)

shapefile可以在以下保管箱位置找到:https: //www.dropbox.com/sh/d4w6saailydtu1r/5oIa56xV6S

然后我尝试使用以下命令:

shape1 <- fortify(shape,region="data")
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我应该放置什么"数据".这个地方似乎令人困惑.我可以在R中打开数据或shapefile.但是,当我运行fortify行时,我收到以下错误:

'[.data.frame'(attr ,, region)中的错误:选中了未定义的列

任何人都能告诉我如何用例子正确强化形状文件吗?我想使用fortify的原因是我想将形状文件与数据点组合在一起.

非常感谢.

Jdbaba

r ggplot2

9
推荐指数
1
解决办法
9254
查看次数

使用ggmap和geom_point时,geom_text无法正常工作

我正在使用ggmap和gg_point函数来显示河口的测量数据.

我使用的代码如下:

    library(ggmap)
al1 <- get_map(location = c(lon = -87.525, lat = 30.35), zoom = 12, maptype = 'terrain')

lon<- c(-87.604474,-87.55)
lat<- c(30.362563,30.35)
label <- c("A","B")
df<-data.frame(lon,lat,label)

p <- ggmap(al1)+geom_point(data=df,aes(x=lon,y=lat,shape=label,label=label),size=3)
p <- p + xlab("Longitude")+ylab("Latitude")
p <- p +geom_text(aes(label=label, size=3,vjust=0))
p <- p + labs(title="Monitoring stations ")
p

ggsave("plot.pdf")
Run Code Online (Sandbox Code Playgroud)

在这里,当我使用geom_text时,我得到以下错误,"美学必须是长度为1,或与dataProblems:label相同的长度".

我想将标签贴在图中的点旁边.我想放置两个点和标签,并留有一些间距,以便更容易阅读.

我查看了这篇文章" ggplot legend issue w/geom_point和geom_text "并尝试修改我的代码,如上所示,但我不知道为什么我遇到这个问题.

还有另一篇文章如何说服ggplot2 geom_text标记时间序列图中的指定日期?谈到类似的问题.我得到的结果不同,因为我也在使用ggmap吗?

请帮我解决这个问题.非常感谢.

Jdbaba

plot r ggplot2 ggmap

8
推荐指数
1
解决办法
9200
查看次数

将日期中的数据以小时和分钟转换为R中的日期

我试图使用R中的"as.date"函数将日期转换为日期因素.我有以下格式的日期

2008-01-01 02:30
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下命令:

as.Date(mydata$Date, format="%y-%m-%d  %h:%mm")
Run Code Online (Sandbox Code Playgroud)

有人可以帮我这个吗?我能够在没有时间的情况下转换格式,但是包含小时的难度.

谢谢.

r

8
推荐指数
1
解决办法
7395
查看次数

标签 统计

r ×10

ggplot2 ×4

escaping ×1

filepath ×1

ggmap ×1

knitr ×1

markdown ×1

pandoc ×1

plot ×1

xtable ×1