- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的简单问题是:如何在两个数据帧之间逐列执行 ks.test
?
例如。我们有两个数据框:
D1 <- data.frame(D$Ag, D$Al, D$As, D$Ba, D$Be, D$Ca, D$Cd, D$Co, D$Cu, D$Cr)
D2 <- data.frame(S$Ag, S$Al, S$As, S$Ba, S$Be, S$Ca, S$Cd, S$Co, S$Cu, S$Cr)
ks.test(D$Ag, S$Ag)
ks.test(D$Al, S$Al)
ks.test(D$As, S$As)
lshap1 <- lapply(D1, shapiro.test)
lres1 <- sapply(lshap1, `[`, c("statistic","p.value"))
apply(D1, 2, function(D2) ks.test(D2,D1[,1])$p.value)
dput(head(D1))
和
dput(head(D2))
。
## Output dput(head(D1)):
structure(list(DF.As = c(-0.154868225169351, -0.291459578010276,
0.0355227595866723, 0.0892191549433623, 0.189115121672669,
-0.365222418641706
), DF.Cd = c(1.28810277421719, 1.45844987179892, 0.642331353138319,
0.673164023466527, 0.131548822144598, 0.146964746525726), DF.Cu
c(8.01131080231879,
6.52606822875086, 2.93449454196807, 4.08720148249298, 1.55494291704341,
1.73663851851503), DF.Cr = c(0.164849379809527, 0.196759436988158,
0.307645386162046, 0.302917612808149, 0.187202322026229, 0.25358922601195
), DF.Ni = c(0.362592459542858, 0.527078409257359, 0.477116357433909,
0.469287608844157, 0.225865184678244, 0.355321456594576), DF.Pb
c(0.414448963979605,
0.616598678960665, -0.0531899082482045, 0.47477978516042,
0.422106471495816,
0.0326241032568164), DF.Zn = c(74.7657982668, 74.2978919524635,
36.6575117549406, 47.8440365300156, 21.4962811912273, 23.3823413091772
)), .Names = c("DF.As", "DF.Cd", "DF.Cu", "DF.Cr", "DF.Ni", "DF.Pb",
"DF.Zn"), row.names = c(NA, 6L), class = "data.frame")
## Output dput(head(D2)):
structure(list(DO.As = c(0.0150158517208966, -0.0477743050574027,
-0.121541780066373, -0.0376195600535572, 0.115393920133327,
0.265450918075612), DO.Cd = c(0.367936811743133, 0.445545318262818,
0.350071986298948,
0.331513644782201, 0.603874629105229, 0.598527030667747), DO.Cu
c(1.65127139067621,
1.90306634226191, 1.08280240161368, 1.12130376047927, 1.23137174481965,
1.16618813144813), DO.Cr = c(0.162996340978278, 0.493799568371693,
0.18441814919492, 0.179883906525139, 0.128058190333676, 0.030406737049484
), DO.Ni = c(0.290717040452464, 0.331891307317008, 0.387987078391917,
0.36147470695146, 0.774910299821917, 0.323259411199816), DO.Pb
c(-0.0584055598838365,
0.377799120780818, -0.0741768575020139, 0.511278669452117,
0.320822577941608, 0.250377389869303), DO.Zn = c(16.5625482436821,
14.5084409384572, 16.571001044493, 18.4509635406253, 15.6876446591721,
12.7649440587945)), .Names = c("DO.As", "DO.Cd", "DO.Cu", "DO.Cr", "DO.Ni",
"DO.Pb", "DO.Zn"), row.names = c(NA, 6L), class = "data.frame")
## This is code for execution:
col.names = colnames(D1)
lapply(col.names, function(t, d1, d2){ks.test(d1[, t], d2[, t])}, D1, D2)
## Output:
Error in `[.data.frame`(d2, , t) : undefined columns chosen
6.stop("undefined columns selected")
5.`[.data.frame`(d2, , t)
4.d2[, t]
3.ks.test(d1[, t], d2[, t])
2.FUN(X[[i]], ...)
1.lapply(col.names, function(t, d1, d2) {ks.test(d1[, t], d2[, t])}, D1, D2)
最佳答案
创建了两个数据框D1
和 D2
带有一些随机数和相同的列名。
set.seed(12)
D1 = data.frame(A=rnorm(n = 30,mean = 5,sd = 2.5),B=rnorm(n = 30,mean = 4.5,sd = 2.2),C=rnorm(n = 30,mean = 2.5,sd = 12))
D2 = data.frame(A=rnorm(n = 30,mean = 5,sd = 2.49),B=rnorm(n = 30,mean = 4.4,sd = 2.2),C=rnorm(n = 30,mean = 2,sd = 12))
D1
和
D2
执行
ks.test
在相应的 data.frames 的相应列上。
col.names = colnames(D1)
lapply(col.names,function(t,d1,d2){ks.test(d1[,t],d2[,t])},D1,D2)
#[[1]]
#Two-sample Kolmogorov-Smirnov test
#data: d1[, t] and d2[, t]
#D = 0.167, p-value = 0.81
#alternative hypothesis: two-sided
#[[2]]
#Two-sample Kolmogorov-Smirnov test
#data: d1[, t] and d2[, t]
#D = 0.233, p-value = 0.39
#alternative hypothesis: two-sided
#[[3]]
#Two-sample Kolmogorov-Smirnov test
#data: d1[, t] and d2[, t]
#D = 0.2, p-value = 0.59
#alternative hypothesis: two-sided
col.names =colnames(S)
lapply(col.names,function(t,d1,d2){ks.test(d1[,t],d2[,t])},D,S)
关于r - 在 R 中按列在两个数据帧之间应用函数(ks.test),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46604471/
我需要修复 getLineNumberFor 方法,以便如果 lastName 的第一个字符位于 A 和 M 之间,则返回 1;如果它位于 N 和 Z 之间,则返回 2。 在我看来听起来很简单,但我不
您好,感谢您的帮助!我有这个: 0 我必须在每次点击后增加“pinli
Javascript 中是否有一种方法可以在不使用 if 语句的情况下通过 switch case 结构将一个整数与另一个整数进行比较? 例如。 switch(integer) { case
我有一列是“日期”类型的。如何在自定义选项中使用“之间”选项? 最佳答案 请注意,您有2个盒子。 between(在SQL中)包含所有内容,因此将框1设置为:DATE >= startdate,将框2
我有一个表,其中包含年、月和一些数字列 Year Month Total 2011 10 100 2011 11 150 2011 12 100 20
这个问题已经有答案了: Extract a substring between double quotes with regular expression in Java (2 个回答) how to
我有一个带有类别的边栏。正如你在这里看到的:http://kees.een-site-bouwen.nl/ url 中类别的 ID。带有 uri 段(3)当您单击其中一个类别时,例如网页设计。显示了一
这个问题在这里已经有了答案: My regex is matching too much. How do I make it stop? [duplicate] (5 个答案) 关闭 4 年前。 我
我很不会写正则表达式。 我正在尝试获取括号“()”之间的值。像下面这样的东西...... $a = "POLYGON((1 1,2 2,3 3,1 1))"; preg_match_all("/\((
我必须添加一个叠加层 (ImageView),以便它稍微移动到包含布局的左边界的左侧。 执行此操作的最佳方法是什么? 尝试了一些简单的方法,比如将 ImageView 放在布局中并使用负边距 andr
Rx 中是否有一些扩展方法来完成下面的场景? 我有一个开始泵送的值(绿色圆圈)和其他停止泵送的值(簧片圆圈),蓝色圆圈应该是预期值,我不希望这个命令被取消并重新创建(即“TakeUntil”和“Ski
我有一个看起来像这样的数据框(Dataframe X): id number found 1 5225 NA 2 2222 NA 3 3121 NA 我有另一个看起来
所以,我正在尝试制作正则表达式,它将解析存储在对象中的所有全局函数声明,例如,像这样 const a = () => {} 我做了这样的事情: /(?:const|let|var)\s*([A-z0-
我正在尝试从 Intellivision 重新创建 Astro-Smash,我想让桶保持在两个 Angular 之间。我只是想不出在哪里以及如何让这个东西停留在两者之间。 我已经以各种方式交换了函数,
到处检查但找不到答案。 我有这个页面,我使用 INNER JOIN 将两个表连接在一起,获取它们的值并显示它们。我有这个表格,用来获取变量(例如开始日期、结束日期和卡号),这些变量将作为从表中调用值的
我陷入了两个不同的问题/错误之间,无法想出一个合适的解决方案。任何帮助将不胜感激 上下文、FFI 和调用大量 C 函数,并将 C 类型包装在 rust 结构中。 第一个问题是ICE: this pat
我在 MySQL 中有一个用户列表,在订阅时,时间戳是使用 CURRENT_TIMESTAMP 在数据库中设置的。 现在我想从此表中选择订阅日期介于第 X 天和第 Y 天之间的表我尝试了几个查询,但不
我的输入是开始日期和结束日期。我想检查它是在 12 月 1 日到 3 月 31 日之间。(年份可以更改,并且只有在此期间内或之外的日期)。 到目前为止,我还没有找到任何关于 Joda-time 的解决
我正在努力了解线程与 CPU 使用率的关系。有很多关于线程与多处理的讨论(一个很好的概述是 this answer )所以我决定通过在运行 Windows 10、Python 3.4 的 8 CPU
我正在尝试编写 PHP 代码来循环遍历数组以创建 HTML 表格。我一直在尝试做类似的事情: fetchAll(PDO::FETCH_ASSOC); ?>
我是一名优秀的程序员,十分优秀!