首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

R语言中多条件排序

R语言中,如何对数据框数据根据某个条件进行排序呢?如何根据多条件进行排序呢,类似Excel排序效果: 1....示例数据 R语言中鸢尾花数据,数据有五: > names(iris) [1] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width"...使用R自带函数order 第一升序,然后是第三升序 这里iris[,1]是数据第一 r1 = iris[order(iris[,1],iris[3]),] head(r1) 结果: > #...,第三降序呢,在第三前面加上一个“-”符号: r2 = iris[order(iris[,1],-iris[3]),] head(r2) 结果: > # 第一升序,然后是第三降序 > r2 =...使用dplyrarrange R包dplyr函数arrange,更简单,更简洁: # 多条件排序:使用dplyr::arrange library(dplyr) data("iris") head(

60720

R语言数据库如何多条件排序

R语言中,如何对数据框数据根据某个条件进行排序呢?如何根据多条件进行排序呢,类似Excel排序效果: ? 1....示例数据 R语言中鸢尾花数据,数据有五: > names(iris) [1] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width"...使用R自带函数order 「第一升序,然后是第三升序」 这里iris[,1]是数据第一 r1 = iris[order(iris[,1],iris[3]),] head(r1) 结果: >...,第三降序呢,在第三前面加上一个符号: r2 = iris[order(iris[,1],-iris[3]),] head(r2) 结果: > # 第一升序,然后是第三降序 > r2 = iris...使用dplyrarrange R包dplyr函数arrange,更简单,更简洁: # 多条件排序:使用dplyr::arrange library(dplyr) data("iris") head(

1.7K40
您找到你想要的搜索结果了吗?
是的
没有找到

R语言】数据框按两排序

我相信大家经常会使用Excel对数据进行排序。有时候我们会按照两个条件来对数据排序。假设我们手上有下面这套数据,9个人,第二(score)为他们考试成绩,第三(code)为对应评级。...在Excel里面其实还是很容已实现。我们只需要先根据code来进行升序排序,然后次要关键字再根据分数进行降序排序。 我们就会得到如下结果 那么这个过程怎么在R里面实现呢?...主要用Rorder这个函数。...#读入文件,data.txt存放数据为以上表格展示数据 file=read.table(file="data.txt",header=T,sep="\t") #先按照code升序,再按照Score...在R里面我们还可以指定code按照一定顺序来排列 #按照指定因子顺序排序,先good,在excellent,最后poor file$Code <- factor(file$Code , levels

2.2K20

javasort排序算法_vbasort按某排序

大家好,又见面了,我是你们朋友全栈君。 C++中提供了sort函数,可以让程序员轻松地调用排序算法,JAVA也有相应函数。...: 由于要用到sort第二个参数,这个参数是一个类,所以应该用Integer,而不是int。...可以使用Interger.intvalue()获得其中int 下面a是int型数组,b是Interger型数组,a拷贝到b,方便从大到小排序。capare返回是1表示需要交换。...和2差不多,都是重载比较器,以下程序实现了点排序,其中x小拍前面,x一样时y小排前面 package test; import java.util.*; class point { int...如果只希望对数组一个区间进行排序,那么就用到sort第二个和第三个参数sort(a,p1,p2,cmp),表示对a数组[p1,p2)(注意左闭右开)部分按cmp规则进行排序 发布者:全栈程序员栈长

2.2K30

R」分组应用和排序应用与比较

out c1 c2 out 1 a 1 out 2 a 3 out 3 a 2 out 4 b 1 out 5 b 4 out 6 c 2 如果我们想保留每个c1分类和分类下最大...但如果分组有成千上万,分组时间代价就很高了。有没有其他方式可以解决该问题呢? 其实处理这种去问题,特别还涉及到排序,我们可以采用先排序再去方式解决。...,在这个只有2个变量数据集测试,第一种方法远快于第二种方法。...但注意,这里其实存在很多变量,包括数据行数、分组数目、以及实际情况下数据集变量数目。哪种更适合需要根据现实场景进行测试考察。...本文重点是,问题解决之道往往不只一种,当程序慢下来时候,我们不要忘记思考和尝试其他方案。

91420

Swift 如何进行多重条件排序

前言 ---- 在一个条件或者单个属性上进行排序非常简单, Swift 本身就有相关功能。...在这种情况下,需要根据另一个条件或属性来进行进一步排序。 我们将在本文中讨论这种多属性排序。他们有各种各样方法来解决这个问题。我将展示没有任何复杂概念最基本方法。...什么是多条件排序 ---- 多条件排序是指我们比较第一个条件排序,只有当第一个条件相等时,我们才转到下一个条件。我们这样做直到找到一个不相等条件。...让我们引入更多条件。如果博客文章表现相同,我们按照title排序。...但是 AreInIncreasingOrder 返回了一个布尔. 我们应该如何判断他们是否相等? 在回答这个问题之前,我们先检查一下 AreInIncreasingOrder 定义。

1.2K20

MySQL根据输入查询条件排序

问题      现在一个需求是查询某一,用逗号分开,返回结果要根据输入顺序返回结果      比如:姓名输入框输入是(zhangsan,lisi),那么返回结果也要是按照(zhangsan,...lisi)这样顺序展示 测试 有如下表classroom,内容如下 如果根据字段名称去查,那么它会根据字典顺序排序,如下所示 select * from classroom where classname...in ("class2","class3") order by classname 如果想根据我in里面的顺序去排序,那么只能是如下所示 select * from classroom where classname...in ("class2","class3") order by field(classname,"class3","class2") 如果我想在原来基础上,在根据时间排序 select * from...条件必须比 in 里面的查询条件多,如果少一个,那么这个排序就不会成功 //成功 select * from classroom where classname in ("class2","class3

14510

R按照数字大小进行排序

R中有时会需要通过数字大小对某些数据进行排序。 不过R默认是按照字符大小顺序进行排序,如常见OTU名称: OTU1,OTU2,OTU3,OTU10 ,OTU20......如果要按照数字排序为OTU1,OTU2,OTU10这种,可以有很多方法,本文举几种简单例子: ---- 先读进一个OTU表~ otu = read.table(file = "otu.txt",sep...,一步到位直接对OTU名字数字排序: library(gtools) a = mixedorder(name) otu2 = otu[a,] 2. stringr包str_order函数类似:...OTU名字去掉OTU只保留数字再排序: c = order(as.numeric(gsub("OTU","",name))) otu2 = otu[c,] 4.OTU名字OTU和数字分开,单独对数字排序...: d = order(as.numeric(sapply(strsplit(name,"Zotu"),"[",2))) otu2 = otu[d,] 5.根据OTU名字字节数进行排序: e = name

2K51

javaList对象列表去或取出以及排序

面试碰到几次list排序。下面介绍一种做法: 1. list去 1.1 实体类Student List容量10k以上,要求去重复。...因此hash算法结果要尽量。这里用到31,这个31在别的博客中看到原因是这样:obj*31==obj<<5-obj.左移5位相当乘以25次方,就是32.nullhashCode为空。...这里去掉是第二次遇到对象,取出也是第二次遇到对象。HashSetadd方法会返回一个Boolean,如果插入已经存在,则直接返回false。关于hashset源码放到以后研究。...参考:1.8HashMap 2. list对象排序 同样list存放是Student对象,我需要一个规则来排序。这个排序规则这里定义为id比较大小。...参考:javalist排序 2.1 Student对象实现Comparable接口 Comparable接口提供一个比较compareTo(Object o)方法,通过返回>0,=0,<0比较大小

4.3K90

面试算法,在绝对排序数组快速查找满足条件元素配对

一个含有多个元素数组,有多种排序方式。它可以升序排列,可以降序排列,也可以像我们以前章节说过,以波浪形方式排序,现在我们要看到一种是绝对排序。...对于数组A,绝对排序满足以下条件:|A[i]| < |A[j]|,只要i < j。...m,如果在(i+1,n)存在下标j,满足A[j] == m 那么我们就可以直接返回配对(i,j),这种做法在数组元素全是正数,全是负数,以及是绝对排序时都成立,只是在绝对排序数组,进行二分查找时...这种做法时间复杂度是O(n)。其算法效率比前面提到方法要好,但问题在于,这种做法不能运用于绝对排序数组。为了能够应对绝对排序数组,我们需要对算法做一些改进。..." and " + this.sortedArray[this.indexJ]); } } } 类FindPairInAbsoluteSortedArray用于在绝对排序数组查找满足条件元素配对

4.3K10
领券