我有10个人的两个数据集.一个是矢量,另一个是矩阵.我想看到的是,向量的第一个元素是否包含在矩阵的第一行中,以及向量的第二个元素是否包含在矩阵的第二行中,依此类推.
所以,我将矢量更改为矩阵并用于apply逐行比较它们.但是,结果并不正确.
这是数据集.
df1<-matrix(c(rep(0,10),2,4,7,6,5,7,4,2,2,2),ncol=2)
df1
# [,1] [,2]
# [1,] 0 2
# [2,] 0 4
# [3,] 0 7
# [4,] 0 6
# [5,] 0 5
# [6,] 0 7
# [7,] 0 4
# [8,] 0 2
# [9,] 0 2
#[10,] 0 2
df2<-c(1,3,6,4,1,3,3,2,2,5)
df2<-as.matrix(df2)
apply(df2, 1, function(x) any(x==df1))
# [1] FALSE FALSE TRUE TRUE FALSE FALSE FALSE TRUE TRUE TRUE
Run Code Online (Sandbox Code Playgroud)
但是,结果必须是FALSE除了第8和第9之外的所有结果.谁能纠正这个功能?谢谢!
我使用caret包进行神经网络分析,需要引用APA风格的包.但是,`引用("插入符号")看起来不像典型的APA风格.任何人都可以参加APA第六届比赛吗?谢谢.
To cite package ‘caret’ in publications use:
Max Kuhn. Contributions from Jed Wing, Steve Weston, Andre Williams,
Chris Keefer, Allan Engelhardt, Tony Cooper, Zachary Mayer, Brenton
Kenkel, the R Core Team, Michael Benesty, Reynald Lescarbeau, Andrew
Ziem, Luca Scrucca, Yuan Tang and Can Candan. (2016). caret:
Classification and Regression Training. R package version 6.0-71.
https://CRAN.R-project.org/package=caret
Run Code Online (Sandbox Code Playgroud) 假设我有一个包含5个选项的7个项目的矩阵,以及一个10个人的矢量.我需要计算的是将每个选项的每个项目值乘以每个人的值.我能够通过使用它来完成它sapply,产生5种不同的矩阵.但是,实际上因为我的数据非常庞大,我想知道是否还有其他任何方式比sapply.以下是示例.
set.seed(10)
person<-round(runif(10,-2,2),3)
[1] 0.030 -0.773 -0.292 0.772 -1.659 -1.098 -0.902 -0.911 0.463 -0.281
set.seed(10)
item<-round(matrix(runif(35,0,1),nrow=7),3)
[,1] [,2] [,3] [,4] [,5]
[1,] 0.507 0.272 0.358 0.615 0.771
[2,] 0.307 0.616 0.429 0.775 0.356
[3,] 0.427 0.430 0.052 0.356 0.536
[4,] 0.693 0.652 0.264 0.406 0.093
[5,] 0.085 0.568 0.399 0.707 0.170
[6,] 0.225 0.114 0.836 0.838 0.900
[7,] 0.275 0.596 0.865 0.240 0.423
## multiplication
m1<-t(sapply(person, FUN=function(x) item[,1]* x))
m2<-t(sapply(person, FUN=function(x) item[,2]* x))
m3<-t(sapply(person, FUN=function(x) item[,3]* …Run Code Online (Sandbox Code Playgroud) 假设我有一个从1到5的向量,
a<-c(1:5)
Run Code Online (Sandbox Code Playgroud)
我需要做的是通过连续丢失一个元素来重复向量.也就是说,最终结果应该是这样的
1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
Run Code Online (Sandbox Code Playgroud)