我需要连接一些相对较大的文本文件,并希望通过命令行执行此操作.不幸的是我只有Windows,无法安装新软件.
type file1.txt file2.txt > out.txt
Run Code Online (Sandbox Code Playgroud)
允许我几乎得到我想要的,但我不希望第一行file2.txt包含在out.txt中.
我注意到,more有+n指定一个起跑线上的选择,但我还没有成功地组合这些得到我想要的结果.我知道在Windows中这可能是不可能的,我总是可以手动编辑out.txt来摆脱这一行,但有一种简单的方法可以从命令行执行此操作吗?
我有下面的data.frame.我想添加一个列,根据第1列(h_no)分类我的数据,第一个系列的h_no 1,2,3,4是1级,第2个系列h_no(1到7)是2级等.如最后一栏中所示.
h_no h_freq h_freqsq
1 0.09091 0.008264628 1
2 0.00000 0.000000000 1
3 0.04545 0.002065702 1
4 0.00000 0.000000000 1
1 0.13636 0.018594050 2
2 0.00000 0.000000000 2
3 0.00000 0.000000000 2
4 0.04545 0.002065702 2
5 0.31818 0.101238512 2
6 0.00000 0.000000000 2
7 0.50000 0.250000000 2
1 0.13636 0.018594050 3
2 0.09091 0.008264628 3
3 0.40909 0.167354628 3
4 0.04545 0.002065702 3
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用RGui(64位)更新软件包,update.packages但我收到以下消息:
Warning in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl, :
'lib = "C:/PROGRA~1/R/R-212~1.1/library"' is not writable
Error in install.packages(update[instlib == l, "Package"], l, contriburl = contriburl, :
unable to install packages
Run Code Online (Sandbox Code Playgroud)
我查看了资源管理器中的库文件夹,它只有设置,所以我删除了它.但是,当我在执行此操作后立即再次检查属性时,它会重新出现.安装新软件包不受影响,因为它们在我的用户配置文件中有一个单独的文件夹.
是否有一个技巧让这个工作?
创建使用的函数时strsplit,矢量输入的行为不符合要求,sapply需要使用.这是由于产生的列表输出strsplit.有没有办法对流程进行矢量化 - 也就是说,函数会在列表中为输入的每个元素生成正确的元素?
例如,要计算字符向量中单词的长度:
words <- c("a","quick","brown","fox")
> length(strsplit(words,""))
[1] 4 # The number of words (length of the list)
> length(strsplit(words,"")[[1]])
[1] 1 # The length of the first word only
> sapply(words,function (x) length(strsplit(x,"")[[1]]))
a quick brown fox
1 5 5 3
# Success, but potentially very slow
Run Code Online (Sandbox Code Playgroud)
理想情况下,像length(strsplit(words,"")[[.]])where 这样的东西.被解释为输入向量的相关部分.
当尝试使用时创建类似函数的列表时lapply,我发现列表中的所有函数都是相同的,并且等于最终元素应该是什么.
考虑以下:
pow <- function(x,y) x^y
pl <- lapply(1:3,function(y) function(x) pow(x,y))
pl
[[1]]
function (x)
pow(x, y)
<environment: 0x09ccd5f8>
[[2]]
function (x)
pow(x, y)
<environment: 0x09ccd6bc>
[[3]]
function (x)
pow(x, y)
<environment: 0x09ccd780>
Run Code Online (Sandbox Code Playgroud)
当您尝试评估这些功能时,您会得到相同的结果:
pl[[1]](2)
[1] 8
pl[[2]](2)
[1] 8
pl[[3]](2)
[1] 8
Run Code Online (Sandbox Code Playgroud)
这里发生了什么,我怎样才能得到我想要的结果(列表中的正确功能)?
我正在尝试使用它来制作一个ggplot2geoms 画廊knitr.为了快速完成这项工作,我想使用内置的examples来填充内容.
经过一些试验和错误,我已经到了这一步:
\documentclass[a4paper,titlepage]{tufte-handout}
\usepackage{pdflscape}
\usepackage{graphicx}
\usepackage{alltt}
<<setup, include=FALSE, cache=FALSE>>=
options(replace.assign=TRUE,tidy=TRUE)
library(ggplot2)
library(plyr)
library(scales)
geoms <- setdiff(apropos("^geom_"),"geom_blank")
@
\title{ggplot2 Gallery}
\begin{document}
\maketitle
<<examples, echo=FALSE, comment=NA>>=
for(i in geoms){
writeLines(paste0("\\section{",gsub("_","\\\\_",i),"}"))
do.call("example",list(i))
}
@
\end{document}
Run Code Online (Sandbox Code Playgroud)
但仍有一些我无法解决的问题:
我似乎无法在块中混合markup和asis结果选项,以便生成章节标题.(这对于稍后导航文档至关重要).是否还有其他方法可以在大块内部编写LaTex?
有一些例子会抛出错误(这就是为什么geom_blank被排除在外).该knitr文件规定,计算继续错误的情况下,但它只是似乎是针织过程,继续; 示例循环在此时停止.有没有办法避免错误的示例部分?
该example代码输出不syntaxed突出.(有用但不是必需的).
在vanilla plotting中,可以polygon在panel.first参数中使用调用plot来突出显示背景区域.是否可以这样做ggplot2?可以在保留网格线的同时完成吗?
例如:
# plot hp and wt for mtcars data, highlighting region where hp/wt ratio < 35
with(mtcars,plot(hp,wt,
panel.first=polygon(c(0,0,max(wt)*35),c(0,max(wt),max(wt)),
col="#d8161688",border=NA)))
Run Code Online (Sandbox Code Playgroud) 我正在保存一个刻面的ggplot2图,它可以很好地保存在较小的尺寸,但是当我想要增加它时会失败.
> ggsave("tst.png",height=6.75,width=9)
# works fine
> ggsave("tst.png",height=9,width=12)
Error in grDevices::png(..., width = width, height = height, res = dpi, :
unable to start device
In addition: Warning messages:
1: In grDevices::png(..., width = width, height = height, res = dpi, :
Unable to allocate bitmap
2: In grDevices::png(..., width = width, height = height, res = dpi, :
opening device failed
Run Code Online (Sandbox Code Playgroud)
我之前用ggsave保存了这个大小的png,为什么它不工作的任何想法?
可重复的例子:
library(car)
qplot(education,data=Vocab,geom="density",colour=sex)+facet_wrap(~year)
Run Code Online (Sandbox Code Playgroud) 在试图回答这个问题,我遇到之间的差异mutate,并transform在我的预期是等价的操作.
# data
x <- data.frame(a=c(rep(0,10),rep(1,10),3),b=c(1:10,0,11:19,0))
#transform
transform(x,a=pmin(a,b), b=pmax(a,b))
a b
1 0 1
2 0 2
3 0 3
4 0 4
5 0 5
6 0 6
7 0 7
8 0 8
9 0 9
10 0 10
11 0 1
12 1 11
13 1 12
14 1 13
15 1 14
16 1 15
17 1 16
18 1 17
19 1 18
20 1 19
21 0 3 …Run Code Online (Sandbox Code Playgroud) 我创建了一个Shiny应用程序,它从数据库中提取数据.我在UI部分有许多输入,在服务器部分有许多输出.
在服务器部分,我有一个反应函数,它使用一些输入构建查询,然后从数据库中提取数据,例如:
queriedData <- reactive({
query <- paste0(...,input$a,...);
return(db$find(query))
})
Run Code Online (Sandbox Code Playgroud)
在输出槽中,我指的是使用中的数据
x <- queriedData()
Run Code Online (Sandbox Code Playgroud)
我的问题是: