我有一个git分支调用9-sign-in-out
完美的代码,我想把它变成主.我现在在主分公司.
$ git branch
9-sign-in-out
* master
Run Code Online (Sandbox Code Playgroud)
我正在尝试切换到9-sign-in-out
分支,但它不允许我:
$ git checkout 9-sign-in-out
app/helpers/application_helper.rb: needs merge
config/routes.rb: needs merge
error: you need to resolve your current index first
Run Code Online (Sandbox Code Playgroud)
任何想法如何忽略所有主分支错误并将9-sign-in-out
分支转换为主分支?也许是git rebase?但我不想丢失9-sign-in-out
分支中的代码.
当有人在提交时写"nit:删除空格"时,"nit"是什么意思?我也看到它大写,好像它是一个缩写(即NIT).有关示例用法,请参阅此帖子:
当然,评论说:"Nit:尾随空格"和"根据编码手册第V节第VII小节,你不应该添加尾随空格.请注意你没有." 或者类似的东西.后者是一种被动攻击性的爆发,前IMO只是一个快速提醒.
"Chromium Code Reviews"中的其他示例:
问题9662:修复次要样式nit(已关闭)
编辑:答案来自Bugzilla的评论页面:
有时,审稿人会在他的评论前加上"Nit:".这意味着他只是"挑剔" - 你没有必要解决这些问题,但我们希望你这样做.
传递参数是否有区别 .load
$("#myDiv").load("myScript.php?var=x&var2=y&var3=z")
Run Code Online (Sandbox Code Playgroud)
VS
$("#myDiv").load("myScript.php", {var1:x, var2:y, var3:z})
Run Code Online (Sandbox Code Playgroud)
此外,是否有一个大小限制.load
可以处理多少?可以
myScript.php
毫无问题地返回几百行数据吗?
我试图更多地了解滚动连接的工作方式和一些混乱,我希望有人可以为我澄清这一点.举一个具体的例子:
dt1 <- data.table(id=rep(1:5, 10), t=1:50, val1=1:50, key="id,t")
dt2 <- data.table(id=rep(1:5, 2), t=1:10, val2=1:10, key="id,t")
Run Code Online (Sandbox Code Playgroud)
我希望这会生成一个long data.table
,其中值为dt2
:
dt1[dt2,roll=TRUE]
Run Code Online (Sandbox Code Playgroud)
相反,正确的方法似乎是:
dt2[dt1,roll=TRUE]
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释更多关于如何加入data.table
作品,因为我显然没有正确理解它.我认为这dt1[dt2,roll=TRUE]
对应于sql等价select * from dt1 right join dt2 on (dt1.id = dt2.id and dt1.t = dt2.t)
,除了增加的功能locf.
另外文档说:
X[Y] is a join, looking up X's rows using Y (or Y's key if it has one)
as an index.
Run Code Online (Sandbox Code Playgroud)
这使得似乎只返回X中的内容,正在进行的连接是内连接,而不是外连接.roll=T
那个什么时候但那个特别id
不存在dt1
?多玩一点我无法理解列中放置了什么值.
考虑这个变量
a = data.frame(x=1:5,y=2:6)
Run Code Online (Sandbox Code Playgroud)
当我使用替换函数更改第一个元素时a
,a
复制的相同大小的内存有多少次?
tracemem(a)
"change_first_element<-" = function(x, value) {
x[1,1] = value
return(x)
}
change_first_element(a) = 3
# tracemem[0x7f86028f12d8 -> 0x7f86028f1498]:
# tracemem[0x7f86028f1498 -> 0x7f86028f1508]: change_first_element<-
# tracemem[0x7f86028f1508 -> 0x7f8605762678]: [<-.data.frame [<- change_first_element<-
# tracemem[0x7f8605762678 -> 0x7f8605762720]: [<-.data.frame [<- change_first_element<-
Run Code Online (Sandbox Code Playgroud)
有四种复制操作.我知道R不会改变对象或通过引用传递(是的,有例外),但为什么有四个副本?一个副本不应该足够吗?
第2部分:
如果我以不同方式调用替换函数,则只有三个复制操作?
tracemem(a)
a = `change_first_element<-`(a,3)
# tracemem[0x7f8611f1d9f0 -> 0x7f8607327640]: change_first_element<-
# tracemem[0x7f8607327640 -> 0x7f8607327758]: [<-.data.frame [<- change_first_element<-
# tracemem[0x7f8607327758 -> 0x7f8607327800]: [<-.data.frame [<- change_first_element<-
Run Code Online (Sandbox Code Playgroud) 我想懒惰地读取来自不同文本文件的数据,类似于延迟加载数据集(例如,iris
在R中输入懒惰加载来自datasets
包的数据集).这里的不同之处在于,expression
只要某个变量(这里我使用x
)被输入R控制台或被其他一些代码使用,我就想运行一个R.
# The expression that I want run if the variable x is called by some other code
expn = quote( {x = read.table(text = "a b \n 1 2", header=TRUE)} )
# When I type this, I want the language object 'expn' to be evaluated
# (e.g. eval(expn)) so that the variable x now exists
x
Run Code Online (Sandbox Code Playgroud)
有没有办法用R promise对象做到这一点?我必须创建一个R包来获得这种行为吗?
我有一个向量列表(如下所示).我想知道向量的每个元素在哪个列表元素中.换句话说,我想反转列表以创建一个新的列表,它names
取自向量.
这样做的最佳方法是什么?
lst <- list(a=c(2, 3, 6, 10, 15, 17), b=c(4, 6, 9, 7, 6, 4, 3, 10),
c=c(9, 2, 1, 4, 3), d=c(3, 6, 17))
lst
$a
[1] 2 3 6 10 15 17
$b
[1] 4 6 9 7 6 4 3 10
$c
[1] 9 2 1 4 3
$d
[1] 3 6 17
Run Code Online (Sandbox Code Playgroud)
我想得到以下答案.
$`1`
[1] "c"
$`10`
[1] "a" "b"
$`15`
[1] "a"
$`17`
[1] "a" "d"
$`2`
[1] "a" "c"
$`3`
[1] …
Run Code Online (Sandbox Code Playgroud) 如何在我的Rnw
文件(LaTeX文件)中突出显示python代码?我正在使用RStudio的"编译PDF"功能来运行pdflatex
.
降价文件有两个相关问题(Q1,Q2),但这个问题特定于Rnw
文件.
例:
\documentclass{article}
\begin{document}
<<>>=
print("This is R")
@
<<engine='python'>>=
print "This is python"
@
\end{document}
Run Code Online (Sandbox Code Playgroud)
我在 kernlab 包中发现了一些令人费解的行为:估计数学上相同的 SVM 在软件中会产生不同的结果。
为简单起见,此代码片段仅采用虹膜数据并使其成为二元分类问题。如您所见,我在两个 SVM 中都使用了线性内核。
library(kernlab)
library(e1071)
data(iris)
x <- as.matrix(iris[, 1:4])
y <- as.factor(ifelse(iris[, 5] == 'versicolor', 1, -1))
C <- 5.278031643091578
svm1 <- ksvm(x = x, y = y, scaled = FALSE, kernel = 'vanilladot', C = C)
K <- kernelMatrix(vanilladot(), x)
svm2 <- ksvm(x = K, y = y, C = C, kernel = 'matrix')
svm3 <- svm(x = x, y = y, scale = FALSE, kernel = 'linear', cost = C)
Run Code Online (Sandbox Code Playgroud)
但是,svm1 和 …
我有一张桌子,我需要填充平均值.我目前正在使用低效的代码,这将花费很长时间在大型数据集上.例:
样本数据:
x = read.table(text="a b value mean
1 1 10 0
1 1 12 0
2 2 14 0
2 1 16 0", header=TRUE)
Run Code Online (Sandbox Code Playgroud)
码:
y <- aggregate(x$value, list(a = x$a,b = x$b), mean)
print(y)
# a b x
# 1 1 1 11
# 2 2 1 16
# 3 2 2 14
for (i in 1:4) {
for (j in 1:3) {
if (x$a[i]==y$a[j] && x$b[i]==y$b[j]) {
x$mean[i]=y$x[j] }
}
}
print(x) # This is the final …
Run Code Online (Sandbox Code Playgroud) r ×7
data.table ×2
abbreviation ×1
aggregate ×1
ajax ×1
branch ×1
git ×1
git-branch ×1
git-merge ×1
join ×1
jquery ×1
kernlab ×1
knitr ×1
mean ×1
memory ×1
python ×1
rstudio ×1
shorthand ×1
statistics ×1
svm ×1
time-series ×1