如何解决如何在R中选择数据集的某些行然后在函数中使用?
我试图在R的iris
数据集中找到不同物种之间的马氏距离。我可以通过以下代码找到setosa
和versicolor
之间的距离:
library(HDMD)
#To get Mahalanobis distances between Setosa and Versicolor,set.vers<-pairwise.mahalanobis(x=iris[1:100,1:4],grouping=iris[1:100,]$Species)
md= sqrt(set.vers$distance)
但是,我正在努力为setosa
和virginica
做同样的事情。我不确定如何选择数据集的前50行和后50行(即没有任何versicolor
数据)
解决方法
这是一个基本的子设置问题。您想基于Species
进行子集化,类似(未经测试)
ss <- iris[iris$Species %in% c("Setosa","Virginica"),]
pairwise.mahalanobis(x = ss,grouping = ss$Species)
您当然可以通过多种方式更改要比较的物种对。
,这是一种获取// You use their extended Schema class:
use Brokenice\LaravelMysqlPartition\Schema\Schema;
// You might also need this (I didn't need it for partitioning by hash):
use Brokenice\LaravelMysqlPartition\Models\Partition;
// I omitted class and method definition boilerplate...
// Create a table as you would normally:
Schema::create('partitioned',static function (Blueprint $table) {
// ...
});
// Now partition it (it will run an ALTER TABLE query):
Schema::partitionByList(
'partitioned','id',[
new Partition('server_east',Partition::LIST_TYPE,[1,43,65,12,56,73]),new Partition('server_west',[534,6422,196,956,22])
]
);
和iris$Species
中的所有级别组合并计算马氏距离的方法。
combn
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。