我有这个样本数据:
cvar <- c("2015-11-01","2015-11-02","All")
nvar1 <- c(12,10,5)
nvar2 <- c(7,5,6)
data <- cbind.data.frame(cvar,nvar1,nvar2)
Run Code Online (Sandbox Code Playgroud)
我只是想在data.frame中添加一个新行,其中包含nvar1和nvar2的总和以及一个字符,所以使用base RI就可以了
data[nrow(data)+1,] <- c("add",sum(data[,2]),sum(data[,3]))
Run Code Online (Sandbox Code Playgroud)
还是更加聪明的事情,但只是为了告诉你我在寻找什么.
我想在管道环境中使用这个简单的命令,所以数据%>%...给了我上面的结果.
感谢任何帮助,谢谢.
我试图ggmap通过学校来看待教育成绩.我创建了所有学校的坐标列表和个别学生的分数如下:
score lat lon
3205 45 28.04096 -82.54980
8275 60 27.32163 -80.37673
4645 38 27.45734 -82.52599
8962 98 26.54113 -81.84399
9199 98 27.88948 -82.31770
340 53 26.36528 -81.79639
Run Code Online (Sandbox Code Playgroud)
我首先使用了我参与的大多数教程中的模式:http : //journal.r-project.org/archive/2013-1/kahle-wickham.pdf http://www.geo.ut.ee/ AASA/LOOM02331/heatmap_in_R.html
library(ggmap)
library(RColorBrewer)
MyMap <- get_map(location = "Orlando, FL",
source = "google", maptype = "roadmap", crop = FALSE, zoom = 7)
YlOrBr <- c("#FFFFD4", "#FED98E", "#FE9929", "#D95F0E", "#993404")
ggmap(MyMap) +
stat_density2d(data = s_rit, aes(x = lon, y = lat, fill = ..level.., alpha = ..level..), …Run Code Online (Sandbox Code Playgroud) 我创建了一个函数,它将四分之一年格式的向量强制转换为日期向量.
.quarter_to_date(c("Q1/13","Q2/14"))
[1] "2013-03-01" "2014-06-01"
Run Code Online (Sandbox Code Playgroud)
这是我的功能代码.
.quarter_to_date <-
function(x){
ll <- strsplit(gsub('Q([0-9])[/]([0-9]+)','\\1,\\2',x),',')
res <- lapply(ll,function(x){
m <- as.numeric(x[1])*3
m <- ifelse(nchar(m)==1,paste0('0',m),as.character(m))
as.Date(paste(x[2],m,'01',sep='-'),format='%y-%m-%d')
})
do.call(c,res)
}
Run Code Online (Sandbox Code Playgroud)
我的功能很好但看起来很长而且有点复杂.我认为这应该已经在其他包中完成了(lubridate例如)但是我找不到它.有人可以帮我简化这段代码吗?
我很好奇你们在 R 中阅读 xlsx 文档时是否遇到过类似的错误:
library(openxlsx)
data = read.xlsx(file, sheet =1, startRow = 2, colNames = FALSE)
Run Code Online (Sandbox Code Playgroud)
即使我的文件有工作表也会发生错误:
Error in read.xlsx.default(file, sheet =1, startRow = 2, colNames = FALSE) :
Workbook has no worksheets
Run Code Online (Sandbox Code Playgroud)
当我手动将另一个空工作表添加到我的 xlsx 文件中时,一切正常。但是,我想知道如何解决这个问题,而不需要逐个打开每个 xlsx 文件来添加另一张纸。您知道如何处理吗?先感谢您。
随着forecast包,我有一个时间序列,我想?auto.arima自动选择订单,但我想强迫季节性.函数的默认值允许将seasonal参数设置为TRUE,但这只允许季节性选项而不是强制.
auto.arima(x, d=NA, D=NA, max.p=5, max.q=5,
max.P=2, max.Q=2, max.order=5, max.d=2, max.D=1,
start.p=2, start.q=2, start.P=1, start.Q=1,
stationary=FALSE, seasonal=TRUE,
ic=c("aicc", "aic", "bic"), stepwise=TRUE, trace=FALSE,
approximation=(length(x)>100 | frequency(x)>12), xreg=NULL,
test=c("kpss","adf","pp"), seasonal.test=c("ocsb","ch"),
allowdrift=TRUE, allowmean=TRUE, lambda=NULL, biasadj=FALSE,
parallel=FALSE, num.cores=2)
Run Code Online (Sandbox Code Playgroud) 我有一个非常基本的问题,因为我对 R 比较陌生。我想知道如何将列中的值添加到前一个值,并向下重复 1000 个值的列?请注意,我不需要累积和,因此 cumsum 函数没有用。假设我的列称为 WD,我想将 WD1 添加到 WD2,将 WD2 添加到 WD3,将 WD3 添加到 WD4 等等,并将这些总和作为新列输出。有简单的方法吗?非常感谢。
一个可重现的例子:
set.seed(111)
df1 <- data.frame(WD=sample(10))
#result
df1
WD new
1 6 6
2 7 13
3 3 10
4 4 7
5 8 12
6 10 18
7 1 11
8 2 3
9 9 11
10 5 14
Run Code Online (Sandbox Code Playgroud) 请问有人可以帮我如何将 4 字节十六进制格式转换为 R 中的浮点数吗?例如我想转移"aec7a042"到80.39. 经过大量搜索后,我在 R 中找不到任何东西来给我这个转换!C 函数是 BitConverter。至单身。但我需要在 R 中做同样的事情?有人可以帮我吗?
我有一个6 x 10矩阵,我必须找到每行中最大值的行索引和列索引.
set.seed(75)
amat <- matrix( sample(10, size=60, replace=T), nrow=6)
Run Code Online (Sandbox Code Playgroud)
这给了我矩阵:
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 3 6 7 7 2 4 3 7 1 4
[2,] 1 9 8 7 2 6 10 9 5 2
[3,] 7 10 8 4 10 5 4 8 4 4
[4,] 4 3 1 1 3 3 9 7 4 2
[5,] 1 8 1 9 9 8 1 3 7 7
[6,] 2 6 …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 dplyr 函数式编程指南编写一个函数来动态更改变量名称。它适用于大多数 tidyverse 变量替换,但不适用于要评估的函数使用公式时。
一个绘图示例facet_wrap:
library(dplyr)
library(ggplot2)
mtcars %>%
ggplot(aes(hp, mpg)) +
geom_point() +
facet_wrap(~cyl)
f <- function(wrap_col) {
mtcars %>%
ggplot(aes(hp, mpg)) +
geom_point() +
facet_wrap(~ {{ wrap_col }})
}
f(cyl)
# Error in eval_tidy(facet, mask) : object 'cyl' not found
Run Code Online (Sandbox Code Playgroud)
我尝试了上面的简单版本并使用引号"{{ wrap_col }}"和方括号。没有一个对我有用
假设我有一些时间序列如下,我想预测c1一步一步,这样做很简单直接在R:
testurl = "https://docs.google.com/spreadsheets/d/1jtpQaSxNY1V3b-Xfa5OJKDCLE6pNlzTbwhSHByei4EA/pub?gid=0&single=true&output=csv"
test = getURL(testurl)
mydata = read.csv(textConnection(test), header = TRUE)
data <- ts(mydata['c1'])
fit <- auto.arima(data)
fcast <- forecast(fit)
fcast
Run Code Online (Sandbox Code Playgroud)
请注意,这些数字只是随机数,auto.arima建议我们使用a arima(0,1,0)和预测一步,一个头是52.
但是,如果想要使用c2和c3改进(例如aic和bic)样本预测,该怎么办?那个人怎么会继续呢?
c1 c2 c3
40 0,012 1
41 0,015 1
42 0,025 1
40 ?0,015 1
44 0,000 0
50 0,015 0
52 0,015 1
51 0,020 1
50 0,025 1
52 0,030 0
53 0,045 1
52 0,030 1
52 0,025 0
52 0,000 0
51 0,010 …Run Code Online (Sandbox Code Playgroud)