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

【R语言】数据框按两列排序

我相信大家经常会使用Excel对数据进行排序。有时候我们会按照两个条件来对数据排序。假设我们手上有下面这套数据,9个人,第二列(score)为他们的考试成绩,第三列(code)为对应的评级。...主要用的是R中的order这个函数。...#读入文件,data.txt中存放的数据为以上表格中展示的数据 file=read.table(file="data.txt",header=T,sep="\t") #先按照code升序,再按照Score...,只需要前面加个负号就可以了 View(file[order(file$Code,-file$Score),]) 下面是按照code升序,然后再按score降序排列的结果,是不是跟Excel处理的结果一样...在R里面我们还可以指定code按照一定的顺序来排列 #按照指定的因子顺序排序,先good,在excellent,最后poor file$Code <- factor(file$Code , levels

2.3K20

seaborn可视化数据框中的多个列元素

seaborn提供了一个快速展示数据库中列元素分布和相互关系的函数,即pairplot函数,该函数会自动选取数据框中值为数字的列元素,通过方阵的形式展现其分布和关系,其中对角线用于展示各个列元素的分布情况...,剩余的空间则展示每两个列元素之间的关系,基本用法如下 >>> df = pd.read_csv("penguins.csv") >>> sns.pairplot(df) >>> plt.show()...函数自动选了数据框中的3列元素进行可视化,对角线上,以直方图的形式展示每列元素的分布,而关于对角线堆成的上,下半角则用于可视化两列之间的关系,默认的可视化形式是散点图,该函数常用的参数有以下几个 ###...#### 3、 x_vars和y_vars 默认情况下,程序会对数据框中所有的数值列进行可视化,通过x_vars和y_vars可以用列名称来指定我们需要可视化的列,用法如下 >>> sns.pairplot...通过pairpplot函数,可以同时展示数据框中的多个数值型列元素的关系,在快速探究一组数据的分布时,非常的好用。

5.2K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Excel按某一列数据从另一列找到对应字段的数值

    本文介绍在Excel中,从某一列数据中找到与已知数据对应的字段,并提取这个字段对应数值的方法。   首先,来明确一下我们的需求。...现在已知一个Excel数据,假设其中W列包含了上海市全部社区的名称,而其后的Y列则是这些社区对应的面积;随后,Z列是另一批社区的名称,其中既有上海市的社区(也就是在W列中的数据),也可能会有其他城市的社区...需求的实现也是很简单的,我们只需要在AA列中第一个数据行中,输入如下的公式即可。 =VLOOKUP(Z2,$W$2:$Y$53,3,FALSE)   其中,VLOOKUP是Excel中的查询函数。...此外,在列号字母和行号数字前,一定要加   随后,3表示在用来【寻找社区面积】的那一堆数据里,社区面积排在第几列。...因为我们这里需要严格按照W列和Z列的社区名称来匹配,只要社区名称一致的时候才可以确认匹配,所以这里我就选择FALSE;如果希望模糊匹配的话,那就可以选择TRUE。

    17310

    【Python】基于某些列删除数据框中的重复值

    =True) 按照多列去重实例 一、drop_duplicates函数介绍 drop_duplicates函数可以按某列去重,也可以按多列去重。...subset:用来指定特定的列,根据指定的列对数据框去重。默认值为None,即DataFrame中一行元素全部相同时才去除。...导入数据处理的库 os.chdir('F:/微信公众号/Python/26.基于多列组合删除数据框中的重复值') #把路径改为数据存放的路径 name = pd.read_csv('name.csv...结果和按照某一列去重(参数为默认值)是一样的。 如果想保留原始数据框直接用默认值即可,如果想直接在原始数据框删重可设置参数inplace=True。...如需处理这种类型的数据去重问题,参见本公众号中的文章【Python】基于多列组合删除数据框中的重复值。 -end-

    20.5K31

    2.37 PowerBI数据建模-按列排序的副作用,ALL失效了

    使用ALL函数来计算占比,明明公式正确,返回的百分比却都是100%,百思不得其解,这是软件的Bug吗? 举例基于下表,计算每个班级的人数占比。...班级人数'[人数])总人数_Wrong = CALCULATE([人数],ALL('班级人数'[班级]))班级人数占比_Wrong = DIVIDE([人数],[总人数])异常结果如下:解决方案班级这一列使用了按列排序...,把班级字段拖入报表中的时候,实际上还拖入了一个看不到的班级排序字段,这样才能实现排序的效果。...这种情况下,ALL函数只用了一个字段,并没有彻底清除筛选,所以分母的总人数返回的还是每个班级的人数。把字段和排序字段都放到ALL的参数中,就会返回正确的结果。...本例把ALL的参数调整为班级和用于排序的班级排序字段,如下:总人数 = CALCULATE([人数],ALL('班级人数'[班级],'班级人数'[班级排序]))拓展按列排序还会有其他的副作用,比如判断某个被排序的字段是否被筛选

    3500

    【Python】基于多列组合删除数据框中的重复值

    最近公司在做关联图谱的项目,想挖掘团伙犯罪。在准备关系数据时需要根据两列组合删除数据框中的重复值,两列中元素的顺序可能是相反的。...本文介绍一句语句解决多列组合删除数据框中重复值的问题。 一、举一个小例子 在Python中有一个包含3列的数据框,希望根据列name1和name2组合(在两行中顺序不一样)消除重复项。...import numpy as np #导入数据处理的库 os.chdir('F:/微信公众号/Python/26.基于多列组合删除数据框中的重复值') #把路径改为数据存放的路径 df =...打印原始数据行数: print(df.shape) 得到结果: (130, 3) 由于每两行中有一行是重复的,希望数据处理后得到一个65行3列的去重数据框。...从上图可以看出用set替换frozense会报不可哈希的错误。 三、把代码推广到多列 解决多列组合删除数据框中重复值的问题,只要把代码中取两列的代码变成多列即可。

    14.7K30

    R 茶话会(七:高效的处理数据框的列)

    前言 这个笔记的起因是在学习DataExplorer 包的时候,发现: 这我乍一看,牛批啊。这语法还挺长见识的。 转念思考了一下,其实目的也就是将数据框中的指定列转换为因子。...换句话说,就是如何可以批量的对数据框的指定行或者列进行某种操作。...(这里更多强调的是对原始数据框的直接操作,如果是统计计算直接找summarise 和它的小伙伴们,其他的玩意儿也各有不同,掉头左转: 34....R 数据整理(六:根据分类新增列的种种方法 1.0) 其实按照我的思路,还是惯用的循环了,对数据框的列名判断一下,如果所取的列在数据框中,就修改一下其格式,重新赋值: data(cancer, package...这里就回到开始的问题了,如果是希望对数据框本身进行处理,而非统计学运算呢?

    1.5K20

    学徒讨论-在数据框里面使用每列的平均值替换NA

    最近学徒群在讨论一个需求,就是用数据框的每一列的平均数替换每一列的NA值。但是问题的提出者自己的代码是错的,如下: ? 他认为替换不干净,应该是循环有问题。...#我好像试着写出来了,上面的这个将每一列的NA替换成每一列的平均值。 #代码如下,请各位老师瞅瞅有没有毛病。...:我是这么想的,也不知道对不对,希望各位老师能指正一下:因为tmp数据框中,NA个数不唯一,我还想获取他们的横坐标的话,输出的结果就为一个list而不是一个数据框了。...a=1:1000 a[sample(a,100)]=NA dim(a)=c(20,50) a # 按照列,替换每一列的NA值为该列的平均值 b=apply(a,2,function(x){ x[is.na...,就数据框的长-宽转换!

    3.6K20

    R语言第二章数据处理⑤数据框列的转化和计算目录正文

    正文 本篇描述了如何计算R中的数据框并将其添加到数据框中。一般使用dplyr R包中以下R函数: Mutate():计算新变量并将其添加到数据表中。 它保留了现有的变量。...同时还有mutate()和transmutate()的三个变体来一次修改多个列: Mutate_all()/ transmutate_all():将函数应用于数据框中的每个列。...Mutate_at()/ transmutate_at():将函数应用于使用字符向量选择的特定列 Mutate_if()/ transmutate_if():将函数应用于使用返回TRUE的谓词函数选择的列...tbl:一个tbl数据框 funs:由funs()生成的函数调用列表,或函数名称的字符向量,或简称为函数。predicate:要应用于列或逻辑向量的谓词函数。...转换特定列 mutate_at():转换按名称选择的特定列: my_data2 %>% mutate_at( c("Sepal.Length", "Petal.Width"),

    4.2K20

    问与答62: 如何按指定个数在Excel中获得一列数据的所有可能组合?

    excelperfect Q:数据放置在列A中,我要得到这些数据中任意3个数据的所有可能组合。如下图1所示,列A中存放了5个数据,要得到这5个数据中任意3个数据的所有可能组合,如列B中所示。...Dim n AsLong Dim vElements As Variant Dim lRow As Long Dim vResult As Variant '要组合的数据在当前工作表的列...A Set rng =Range("A1", Range("A1").End(xlDown)) '设置每个组合需要的数据个数 n = 3 '在数组中存储要组合的数据...lRow = lRow + 1 Range("B" & lRow) = Join(vResult, ", ") '每组组合放置在多列中...代码的图片版如下: ? 如果将代码中注释掉的代码恢复,也就是将组合结果放置在多列中,运行后的结果如下图2所示。 ? 图2

    5.6K30

    PQ-M及函数:如何按某列数据筛选出一个表里最大的行?

    关于筛选出最大行的问题,通常有两种情况,即: 1、最大行(按年龄)没有重复,比如这样: 2、最大行(按年龄)有重复,比如这样: 对于第1种情况,要筛选出来比较简单...,直接用Table.Max函数即可(得到的是一个记录,也体现了其结果的唯一性),如下图所示: 对于第2种情况,可以考虑用Table.SelectRows函数来进行筛选,即筛选出年龄等于源表...(数据导入Power Query后做了类型更改,产生了”更改的类型“步骤)中最大值(通过List.Max函数取得,主要其引用的是源表中的年龄列)的内容: 当然,第2种情况其实是适用于第1...种情况的。...这也是为什么说——Table.SelectRows这个函数非常常用,其可使用的场景非常的多。

    2.7K20

    R语言之数值型描述分析

    factor(ht, labels = c("no", "yes")), ui = factor(ui, labels = c("no", "yes"))) str(birthwt) 获取数据框里每个变量的常用统计量是一种快速探索数据集的方法...epiDisplay 包的函数 summ( )作用于数据框可以得到另一种格式的汇总输出,它将变量按行排列,把最小值和最大值放在最后两列以方便查看数据的全距。...( )同时计算数据框中多个变量的指定统计量。...例如,计算数据框 cont.vars 中各个变量的样本标准差: sapply(cont.vars, sd) 基本包中没有提供计算偏度和峰度的函数,我们可以根据公式自己计算,也可以调用其他包里的函数计算,...library(dplyr) birthwt %>% group_by(smoke) %>% summarise(Mean.bwt = mean(bwt), Sd.bwt = sd(bwt)) 数据分析者可以选择自己最习惯的方式计算和展示描述性统计量

    24920

    天意R笔记|新手必须掌握的R语言基础

    ,byrow参数决定数据是按行还是按列填充,dimnames参数则用于为矩阵添加行名和列名。...数组是对向量和矩阵的扩展,适用于处理更复杂的数据。 (四)因子 因子是一种专门用于表示分类或有序类别数据的R数据类型。因子将分类数据编码为整数,并保存这些整数与原始类别标签之间的映射关系。...(六)数据框 数据框(data frame)是R语言中特别常用的数据结构,用于存储表格形式的数据。数据框中的每一列代表一个变量,可以是不同的数据类型(如数值、字符或逻辑值),每一行表示一个观测值。...数据框可以通过 data.frame() 函数创建,各列的长度必须相同。数据框类似于电子表格,是进行统计分析和数据可视化的基础工具,能够灵活处理包含不同类型变量的数据集。...12.列合并与行合并:使用 cbind()函数 按列合并矩阵,例如 cbind(A, B) ;使用rbind()函数按行合并矩阵,例如rbind(A, B)。

    7010

    Excel实例:Excel图表可视化:条形图、折线图、散点图和步骤图

    示例1 –为图1中的数据创建一个条形图。 第一步是将数据输入到工作表中。接下来,我们突出显示范围A4:D10,即包括行和列标题的数据(不包括总数),然后选择 插入>图表|列。 ?...如果要按品牌销售图表而不是按城市销售图表,则可以单击该图表,然后选择“ 设计”>“数据” |“切换行/列”。...图3 –编辑轴标签对话框 现在,我们单击 “ 水平(类别)”轴标签的“ 编辑”按钮 (在对话框的右侧)。...提示我们输入轴标签数据范围,然后输入A4:A13(或仅在工作表上突出显示此范围),然后按 OK(确定) 按钮。接下来,我们 在图3所示的对话框中按 OK按钮以接受更改。...这将打开“ 格式化轴” 对话框。选择“ 轴选项” ,然后将“ 最小值 ”单选按钮 从“ 自动” 更改为“ 固定”, 然后输入20000。

    5.2K10

    Excel实例:Excel图表可视化:条形图、折线图、散点图和步骤图

    示例1  –为图1中的数据创建一个条形图。 第一步是将数据输入到工作表中。接下来,我们突出显示范围A4:D10,即包括行和列标题的数据(不包括总数),然后选择  插入>图表|列。...如果要按品牌销售图表而不是按城市销售图表,则可以单击该图表,然后选择“  设计”>“数据” |“切换行/列”。...图3 –编辑轴标签对话框 现在,我们单击 “ 水平(类别)”轴标签的“  编辑”按钮   (在对话框的右侧)。...提示我们输入轴标签数据范围,然后输入A4:A13(或仅在工作表上突出显示此范围),然后按  OK(确定) 按钮。接下来,我们 在图3所示的对话框中按  OK按钮以接受更改。...这将打开“  格式化轴”  对话框。选择“  轴选项”  ,然后将“ 最小值 ”单选按钮   从“  自动”  更改为“  固定”,  然后输入20000。

    4.4K00

    左手用R右手Python系列10——统计描述与列联分析

    数据统计描述与列联表分析是数据分析人员需要掌握的基础核心技能,R语言与Python作为优秀的数据分析工具,在数值型数据的描述,类别型变量的交叉分析方面,提供了诸多备选方法。...这里根据我们平时对于数据结构的分类习惯,按照数值型和类别型变量分别给大家盘点一下R与Python中那些简单使用的分析函数。...【crosstab】的规则几乎与Excel中的透视表理念很像,可以作为所有的数值型、类别型变量的表述统计、频率统计和交叉列联表统计使用。...透视表中的行字段,通常为类别型字段) columns=None, #列字段(对应Excel透视表中的列字段,通常为类别型字段) values=None...事实上,crosstab似乎同时也能兼容透视表的完整功能,但是奇怪的是透视表提供了数据框名称参数,指定参数时无需声明数据框名称,而且行列字段都可指定列表对象(二维以上,指定多个 字段),但是交叉表则没有给出数据框名称向量

    3.5K120

    【数据结构】数组和字符串(八):稀疏矩阵的链接存储:十字链表的创建、插入元素、遍历打印(按行、按列、打印矩阵)、销毁

    4.2.1 矩阵的数组表示 【数据结构】数组和字符串(一):矩阵的数组表示 4.2.2 特殊矩阵的压缩存储   矩阵是以按行优先次序将所有矩阵元素存放在一个一维数组中。...传统的按行优先次序存储方法会浪费大量空间来存储零元素,因此采用压缩存储的方法更为合适。常见的压缩存储方法有:压缩稠密行(CSR)、压缩稠密列(CSC)、坐标列表(COO)等。 a....对角矩阵的压缩存储 【数据结构】数组和字符串(二):特殊矩阵的压缩存储:对角矩阵——一维数组 b~c....稀疏矩阵的压缩存储——三元组表 【数据结构】数组和字符串(四):特殊矩阵的压缩存储:稀疏矩阵——三元组表 4.2.3三元组表的转置、加法、乘法、操作 【数据结构】数组和字符串(七):特殊矩阵的压缩存储:...关于循环链表: 【数据结构】线性表(三)循环链表的各种操作(创建、插入、查找、删除、修改、遍历打印、释放内存空间) 在稀疏矩阵的十字链表中,每一行和每一列都有一个表头节点。

    24210

    在Excel中制作甘特图,超简单

    创建步骤 步骤1:将活动单元格置于数据区域内,按Ctrl+A选择整个数据区域,然后按Ctrl+T将数据转换成Excel表。 图1 步骤2:可以看到,日期的格式为数字或“常规”数字格式。...选择“任务”列,按住CTRL键选择“日期”、“状态”和“剩余天数”列,然后单击“插入”选项卡“图表”组中的“堆积条形图”。注意,选择中也包括标题。...图2 步骤3:选择“日期”中的数据,将数字格式从“常规”更改为“短日期”,也可以在CTRL+1对话框中自定义格式。 图3 注:也可以在图表中更改数字格式。...图4 步骤5:在甘特图上需要按从上到下的升序调整任务排列。 双击包含任务名称的垂直坐标轴,在右侧“设置坐标轴格式”任务窗格中,选取“坐标轴选项”栏中的“逆序类别”。...图5 步骤6:双击图表顶部的日期轴,并将“边界”的最小值设置为43337。这将使任务1紧贴Y轴。 图6 步骤7:如果希望将日期轴保持在顶部,则可以跳过此步骤。

    7.9K30

    如何利用Excel2007做RFM细分客户群

    Excel操作: Ø 鼠标拉选列标签ABCD,选中透视表所在的四列 Ø 按ctrl^C(复制),点击“开始”菜单栏下,快捷按钮栏“粘帖”下的小下拉三角标,选择“粘帖值”【或者点“选择性粘帖”,然后选择粘帖值...,松开ctrl键,继续按住shift键,按一次向上箭头,取消数据最后一行的汇总数据】 Ø 点击“开始”菜单栏下快捷按钮栏上的“粘帖”按钮下方的下拉箭头,选择“选择性粘帖”,在对话框中勾选“减”,然后“确定...Ø 之所以用$F$2锁定引用的单元格,是为了后续的公式复制,最小值和极差三等分距不会发生相对引用而变化位置【锁定引用单元格除了手工添加$符号外,快捷方式是选中引用的单元格按F4快捷键,此处都比较麻烦,手工输入...接下来的步骤就是统计各个魔方上的客户数量 再次利用透视表形成统计结果 Excel操作: Ø “插入”菜单栏下快捷按钮栏按“透视表”,在数据表区域中选择A4:H1204【确认这个选择,自动跳出来的区域要改一下的哦...Excel操作: Ø 将透视表中B列拉宽(如上图) Ø 选中B5:B22列 Ø “开始”菜单栏下快捷按钮栏点击“条件格式”下拉菜单中选择“数据条”,然后选择一个颜色即可 ?

    1.4K40
    领券