如何在R中选择数据集的某些行然后在函数中使用?

问题描述

我试图在R的iris数据集中找到不同物种之间的马氏距离。我可以通过以下代码找到setosaversicolor之间的距离:

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)

但是,我正在努力为setosavirginica做同样的事情。我不确定如何选择数据集的前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

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...