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

如何删除R中grepl不匹配的列值

在R语言中,可以使用grepl函数来进行正则表达式匹配。如果要删除grepl不匹配的列值,可以按照以下步骤进行操作:

  1. 首先,使用grepl函数对数据框中的每一列进行匹配。例如,我们有一个名为df的数据框,要删除不匹配的列值,可以使用以下代码:
代码语言:txt
复制
matches <- sapply(df, grepl, pattern="匹配的正则表达式")

这将返回一个逻辑向量,其中TRUE表示匹配成功,FALSE表示不匹配。pattern参数是要匹配的正则表达式,可以根据具体情况进行调整。

  1. 接下来,可以使用下列代码将不匹配的列值删除:
代码语言:txt
复制
df <- df[, matches]

这将创建一个新的数据框df,其中只包含匹配成功的列。

完整的代码示例如下:

代码语言:txt
复制
# 创建一个示例数据框
df <- data.frame(
  col1 = c("apple", "banana", "carrot"),
  col2 = c("dog", "cat", "elephant"),
  col3 = c("apple", "banana", "carrot")
)

# 使用grepl函数进行匹配
matches <- sapply(df, grepl, pattern="apple")

# 删除不匹配的列值
df <- df[, matches]

# 输出结果
print(df)

这样就能删除不匹配的列值,并得到匹配成功的列的数据框。

请注意,上述示例中的pattern参数为"apple",你可以根据实际情况进行调整。此外,腾讯云没有直接相关的产品和产品介绍链接地址,因此无法提供相关链接。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

删除 NULL

图 2 输出结果 先来分析图 1 是怎么变成图 2,图1 tag1、tag2、tag3 三个字段都存在 NULL ,且NULL无处不在,而图2 里面的NULL只出现在这几个字段末尾。...这个就类似于 Excel 里面的操作,把 NULL 所在单元格删了,下方单元格往上移,如果下方单元格仍是 NULL,则继续往下找,直到找到了非 NULL 来补全这个单元格内容。...有一个思路:把每一去掉 NULL 后单独拎出来作为一张独立表,这个表只有两个字段,一个是序号,另一个是去 NULL 后。...一个比较灵活做法是对原表数据做转行,最后再通过行转列实现图2 输出。具体实现看下面的 SQL(我偷懒了,直接把原数据通过 SELECT 子句生成了)。...,按在原表列出现顺序设置了序号,目的是维持同一相对顺序不变。

9.8K30
  • 【Python】基于某些删除数据框重复

    导入数据处理库 os.chdir('F:/微信公众号/Python/26.基于多组合删除数据框重复') #把路径改为数据存放路径 name = pd.read_csv('name.csv...从结果知,参数为默认时,是在原数据copy上删除数据,保留重复数据第一条并返回新数据框。 感兴趣可以打印name数据框,删重操作不影响name。...原始数据只有第二行和最后一行存在重复,默认保留第一条,故删除最后一条得到新数据框。 想要根据更多数去重,可以在subset添加。...如果写subset参数,默认为None,即DataFrame中一行元素全部相同时才去除。 从上文可以发现,在Python中用drop_duplicates函数可以轻松地对数据框进行去重。...但是对于两中元素顺序相反数据框去重,drop_duplicates函数无能为力。 如需处理这种类型数据去重问题,参见本公众号文章【Python】基于多组合删除数据框重复。 -end-

    19.4K31

    如何删除 JavaScript 数组

    falsy 有时写作 falsey 在 JavaScript 中有很多方法可以从数组删除元素,但是从数组删除所有虚最简单方法是什么?...为了回答这个问题,我们将仔细研究 truthy 与 falsy 和类型强制转换。 ---- 算法说明 从数组删除所有虚。...解决方案:.filter( ) 和 Boolean( ) 理解问题:我们有一个作为输入数组。目标是从数组删除所有的虚然后将其返回。...数组未通过该测试所有元素都被过滤掉了 —— 被删除了。...知道如果我们将输入数组每个都转换为布尔,就可以删除所有为 false 元素,这就满足了此挑战要求。 算法: 确定 arr 哪些是虚删除所有虚

    9.5K20

    大佬们,如何把某一包含某个所在行给删除

    一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据处理问题,一起来看看吧。 大佬们,如何把某一包含某个所在行给删除?比方说把包含电力这两个字行给删除。...这里【FANG.J】指出:数据不多的话,可以在excel里直接ctrl f,查找“电力”查找全部,然后ctrl a选中所有,右键删除行。...二、实现过程 这里【莫生气】给了一个思路和代码: # 删除Column1包含'cherry'行 df = df[~df['Column1'].str.contains('电力')] 经过点拨,顺利地解决了粉丝问题...后来粉丝增加了难度,问题如下:但如果我同时要想删除包含电力与电梯,这两个关键,又该怎么办呢? 这里【莫生气】和【FANG.J】继续给出了答案,可以看看上面的这个写法,中间加个&符号即可。...顺利地解决了粉丝问题。 但是粉丝还有其他更加复杂需求,其实本质上方法就是上面提及,如果你想要更多的话,可以考虑下从逻辑 方面进行优化,如果没有的话,正向解决,那就是代码堆积。

    18510

    【Python】基于多组合删除数据框重复

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

    14.7K30

    Pandas如何查找某中最大

    一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,问题如下:譬如我要查找某中最大如何做? 二、实现过程 这里他自己给了一个办法,而且顺便增加了难度。...print(df[df.点击 == df['点击'].max()]),方法确实是可以行得通,也能顺利地解决自己问题。...顺利地解决了粉丝问题。 三、总结 大家好,我是皮皮。这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【上海新年人】提出问题,感谢【瑜亮老师】给出思路,感谢【莫生气】、【添砖java】、【冯诚】等人参与学习交流。

    34610

    如何使用Excel将某几列有标题显示到新

    如果我们有好几列有内容,而我们希望在新中将有内容标题显示出来,那么我们怎么做呢? Excel - TEXTJOIN function 1....- - - - 4 - - - 在开始,我们曾经使用INDEX + MATCH方式,但是没有成功,一直是N/A https://superuser.com/questions/1300246/if-cell-contains-value-then-column-header...所以我们后来改为TEXTJOIN函数,他可以显示,也可以显示标题,还可以多个列有时候同时显示。...- - 4 - - - 15 Year 5 - - - - 5 - - - =TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),$B$1:$I$1,"")) 如果是想要显示,...则: =TEXTJOIN(", ",TRUE,IF(ISNUMBER(B2:I2),B2:I2,"")) 其中,ISNUMBER(B2:I2)是判断是不是数字,可以根据情况改成是不是空白ISBLANK

    11.3K40

    R语言】文件和文件夹操作

    做数据分析时候我们经常会处理一个文件夹里面的文件,今天我们就来聊聊R文件夹处理函数list.files。下面是这个函数说明和使用方法 我们结合一个具体例子来看看这个函数使用方法。...,pattern = "png$") 如果我们只想保留以pathview.png为后缀文件,我们可以结合list.files和file.remove这两个函数,以及前面讲到过☞讨论学习Rgrepl...,all.files = T) #通过grepl匹配pathview.png结尾文件 #!取反,就是要删除文件 rm=!...grepl("pathview.png$",files) #通过file.remove删除不需要文件 file.remove(files[rm]) 最后就只剩10个以pathview.png结尾文件了...参考资料: 正则表达式 讨论学习Rgrepl函数

    38420

    左手用R右手Python系列13——字符串处理与正则表达式

    R语言基础函数,支持正则表达式函数主要由以下几个: strsplit() #字符串分割函数 grep/grepl() #字符串筛选函数...以上便是R语言中支持正则表达式高频应用函数,其中R语言基础函数缺少一个精确返回匹配模式结果函数,但是stringr弥补了这一缺陷,这里仅详解stringr这一函数,其他函数感兴趣可以查阅源文档...grep/grepl() 这是一组功能雷同字符串筛选函数(前者可以输出对应符合条件记录序号或者真实,后者直接输出布尔),何为筛选,就是它只能把包含目标匹配模式字符串对象筛选出来,但是呢,如果你需要继续提取其中目标字符串模式...,而且Pyhton作为面向对象高级编程语言,其对正则表达式支持度很高,很多正则原生方法都保留了下来,比如字符串包装,匹配分组等(在R你是做不到R对正则支持真的很有限)。...python为了解决转义符“\”困扰问题,使用r作为字符前缀,直接绕过了转义难题,我们可以大胆使用原生正则表示方法。(R没有解决呢,遇到多重转义懵逼那都是大侠)。

    1.7K40

    R语言学习 - 箱线图(小提琴图、抖动图、区域散点图)

    Boxplot从下到上展示是最小,第一四分位数 (箱子下边线)、中位数 (箱子中间线)、第三四分位数 (箱子上边线)、最大,具体解读参见刘永鑫扩增子图表解读1箱线图:Alpha多样性,老板再也操心我文献阅读了...# variable和value为矩阵melt后名字,内部变量, variable代表了点线属性,value代表对应。...) # 可以利用strsplit分割,取出其前面的字符串 # R复杂输出结果多数以列表形式体现,在之前矩阵操作教程 # 提到过用str函数来查看复杂结果结构,并从中获取信息 group =...","4cell")) # group和A为矩阵名字,group代表了属性,A代表基因A对应表达。...文件,如果用Rstudio,可以运行dev.off() ?

    4.5K100

    不同GSE数据集有不同临床信息,不同分组技巧

    最近,我发现学徒在学习GEO数据挖掘过程,遇到了第一个也是至关重要一个难题就是对下载后数据集进行合适分组,因为只有对样本进行合适分组,才有可能得到我们想要信息。...这里面涉及到两个问题,首先是能否看懂数据集配套文章,从而达到正确生物学意义分组,其次能否通过R代码实现这个分组。同样我也是安排学徒完成了部分任务并且总结出来了!...会发现有些信息是冗余,有些是有效信息可以用来分组,但是表型记录太多,看起来会混淆,所以需要去除那些冗余信息,就是在所有样本里面表型记录都一致如何去冗余,见原文对表型数据框进行去冗余。...通过循环,就可以清楚知道该用哪一来进行分组啦 然后是搜索关键字进行分组 TNBC=rownames(pd1[grepl('triple negative breast cancer cells',...,重复地方赘述,从有差异地方开始。

    9K33

    R语言︱文本(字符串)处理与正则表达式

    例如正则表达式A[0-9]{3} 能够匹配字符"A"后面跟着正好3个数字字符串,例如A123、A348等,但是匹配A1234。...———————————————————————————————————————————————————————— 四、字符串查询: 1、grep和grepl函数: 这两个函数返回向量水平匹配结果,涉及匹配字符串详细位置信息...grep仅返回匹配下标,而grepl返回所有的查询结果,并用逻辑向量表示有没有找到匹配。...,但严格地说R语言没有字符串替换函数,因为R语言不管什么操作对参数都是传传址。...#空白删除 其中\r回车键,\n代表换行符,\s代表空格 2、英文字母、数字正则表达式 [a-zA-Z\d] 3、一些不可删除特殊字符以及 [] 使用 譬如: ... .

    4.2K20

    R语言︱情感分析—基于监督算法R语言实现(二)

    这里使用`aggregate`统计每篇文章每个词频次,2行添加了一个辅助logic,当然添加辅助,设置`aggregate`里FUN参数为`length`函数也能完成,但是数据量大时耗费时间太长...所有文档每个词次数就是计数一下即可,在这用table函数。 图2 现在有了每个词文档频率,该如何匹配到原来数据集中呢?...代码解读:temp就是训练集DF,然后left_join匹配到测试集即可;IDF也是同样,训练集IDF,匹配过来就行,然后就直接计算TFIDF。...答:直接删除,如果这部分单词的确有用,可以加入训练集分词库,在做一次训练集分词内容,当然训练集之后步骤都要重新来一遍。 如何查看测试集中有,而训练集中没有的单词呢?...可参考博客:给R变个形 图4 4.2 训练集- 随机森林模型 随机森林模型不需要id项,通过row.names把id这一放在R默认序号,如图4第一

    1.7K20
    领券