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

从data.frame中删除列,其中NA大于列长度的15%

从data.frame中删除列,其中NA大于列长度的15%,可以使用以下R语言代码实现:

代码语言:R
复制
# 假设dataframe是一个data.frame对象
dataframe <- dataframe[, sapply(dataframe, function(x) sum(is.na(x))/length(x) <= 0.15)]

这段代码使用了R语言中的数据操作函数,其中sapply函数用于对data.frame中的每一列进行操作,function(x) sum(is.na(x))/length(x) <= 0.15是一个匿名函数,用于计算每一列中NA值的比例,如果比例小于等于0.15,则保留该列,否则删除该列。

这段代码可以很好地实现从data.frame中删除NA大于列长度的15%的功能,同时不涉及到其他云计算品牌商的内容。

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

相关·内容

R语言数据框深度解析:从创建到数据操作,一文掌握核心技能

数据框,data.frame,可能是大家最常用的数据结构了。数据读进来一般默认都是数据框结构。...数据框由不同的行和列构成,不同的列可以是不同类型(数值型、字符型、逻辑型等)的数据,比如可以其中一列是数值型,另一列是逻辑型,另一列是字符型,等。但是同一列中必须是相同的类型。...1列和第3列 df[1:3, ] # 获取前 3 行 df[, c("Name", "Score")] # 获取指定列 df[df$Score > 85, ] # 条件筛选 添加与删除列 df$Pass...) # 用均值填补 #### 删除缺失值df na.omit(df) # 删除包含缺失值的行 修改和重编码 df$Gender[df$Gender == "Male"] <- "男" #把Gender...这一列中的Male变成“男” df df$Score[df$Score >= 85] <- "优" df$Score[df$Score < 85] <- "良" #把Score这一列中大于等于85的变成优

19110

快速掌握R语言中类SQL数据库操作技巧

, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL) #表示生成1行,1列的一个矩阵,其中仅仅包含一个元素“NA” #---示例---# > matrix...("C.1", "C.2", "C.3")) 定义矩阵行名和列名 1.3 数据框 DataFrame: data.frame() #其中" 的意思,将向量c(11:15)赋值给对象x >...对于NA值的操作,主要都集中在了过滤操作和填充操作中,因此就不在单独介绍NA值的处理了。...B NA 4 2 B NA 4.2 数据增减 常见如以下不同方法 #方法一:减行数或列数 x=x[,-1] #代表删除x数据集中第一列数据 #方法二:dplyr::mutate...分成2步操作,第一步先分成与数据集同样长度的因子,第二步进行分裂,可以把一个大的向量拆分成多个小的向量。

5.7K20
  • 玩转数据处理120题|R语言版本

    :对数据按照"popularity"列值的大小进行排序 难度:⭐⭐ R解法 df % arrange(popularity) 20 字符统计 题目:统计grammer列每个字符串的长度...new列的和大于60000的最后3行 难度:⭐⭐⭐⭐ 期望输出 ?...(col3,col2,everything()) 94 数据提取 题目:提取第一列位置在1,10,15的数字 难度:⭐⭐ R语言解法 df[c(1,10,15) + 1,1] 95 数据查找 题目:查找第一列的局部最大值位置...:从CSV文件中读取指定数据 难度:⭐⭐ 备注 从数据1中的前10行中读取positionName, salary两列 R语言解法 #一步读取文件的指定列用readr包或者原生函数都没办法 #如果文件特别大又不想全部再选指定列可以用如下办法...文件中读取指定数据 难度:⭐⭐ 备注 从数据2中读取数据并在读取数据时将薪资大于10000的为改为高 R语言解法 library(readr) df2 <- read_csv('数据2.csv')

    8.9K10

    R语言学习笔记

    更新中~ 请注意,本文编写于 398 天前,最后修改于 378 天前,其中某些信息可能已经过时。 R语言认识 R语言特点 有效的数据处理和保存机制。 拥有一整套数组和矩阵的操作运算符。...“AER”包(注意,并不是删除环境中的“AER”包) > require(AER) 载入需要的程辑包:AER > remove.packages("AER") # 删除环境中的“AER”包 从‘C:/Users...y[c(F, F, T, F, F, T, F, F, T, T, T)] # 当要输出的序号超出向量的长度时 [1] 3 6 9 10 NA > y[y>5 & y大于...mpg列进行排序,排在第一个的是15,就说明原来矩阵第15行对应的mpg值是这一列中最小的。...列表中的元素是向量,这些向量构成数据框的列,每一列必须具有相同的长度,所以数据框是矩形结构,而且数据框的列必须命名。

    2.5K100

    「R」数据操作(三):高效的data.table

    下面举例说明,首先创建有1000万行的数据,其中一列是索引列id,其他两列是随机数: n = 10000000 test1 = data.frame(id = 1:n, x = rnorm(n), y...为演示,我们先创建新的data.table,命名为market_data,其中date列是连续的。...,每条记录了钻石的10个属性,现在我们队cut列中的每种切割类型都你拟合一个线性回归模型,由此观察每种切割类型中carat与depth是如何反映log(price)的信息。...(year = year(date))] } 这里我们使用.SD[[x]]提取x列的值,这跟通过名字从列表中提取成分或元素相同。...,而是使用market_data[, (columns) := list(...)]来动态设定列,其中columns是一个包含列名的字符向量,list(...)是每个列对应的值: price_cols

    6.4K20

    R语言入门系列之一

    向量可以通过“[]”来进行索引,方括号内为元素的位置,可以是大于1的整数或者向量,位置前加负号“-”则表示删除这个位置的元素,但是使用向量索引时只能全是正整数或者负整数,不能混杂,如下所示: R语言中判断符号有大于...(length=0) character(length=0) as.vector(x, mode="any") is.vector(x,mode="any") 其中x为作用对象;length为向量长度(...=m, ncol=n) #使用向量生成m行n列的矩阵 matrix(NA, nrow=m, ncol=n) #生成一个m行n列的空矩阵 as.matrix(x) #将对象转换为矩阵 is.matrix(...x) #判断对象是否为矩阵 具体示例如下: 矩阵通过行、列id或者行列name对元素进行索引,也可以使用向量,id前加负号“-”则表示删除改行、列的元素,索引值也可以引入逻辑判断,如下所示: 注意,...此外,一个很重要的软件包是installr,其中的updateR()函数能将R更新到最新,并将已安装的兼容最新版本的程序包整合到新版本R中,如下所示: library(installr) updateR

    4.2K30

    数据处理的R包

    (col_name),就是把进行分组的变量名包含在.()中; fun:应用到每行的函数 > df data.frame(group = c(rep('A', 2), rep('B', 2), rep...,语法如下: gather(data, key, value, na.rm = FALSE,···) data:需要被转换的宽形表 key:将原数据框中的所有列赋给一个新变量key value:将原数据框中的所有值赋给一个新变量...value na.rm:是否删除缺失值 > library(tidyr) > df data.frame(grade=c("A","B","C","D","E"),female=c(5, 4, 1...,...) data:数据框 col:需要合并的列 sep:被拆分列的分隔符(默认下划线:_) remove:是否删除被合并的列 > df_unite <- unite(df, col = 'sex',...数据框 col:需要被拆分的列 into:新建的列名,为字符串向量 sep:被拆分列的分隔符:[^[:alnum:]]+正则表达式,基本包含了大部分的分隔符 remove:是否删除被分割的列 > separate

    4.7K20

    R语言读CSV、txt文件方式以及read.table read.csv 和readr(大数据读取包)

    看到scan引号中嵌入引号的行为。只考虑读的性格,这是所有这些,除非colClasses指定的列引用。 参数:dec 字符用于在小数点文件。 参数:row.names 向量的行名。...这可以是一个向量,给予实际的行名,或一个号码表,其中包含的行名,或字符串,包含行名称表列的名称列。如果有一个头的第一行包含列数少一个领域,在输入的第一列用于行名称。...请注意,as.is指定每列(而不是每个变量)等行名称的列(如有)及任何要跳过的列。 参数:na.strings NA值作为解释的字符串的字符向量。...空白领域也被认为是缺少逻辑,整数,数字和复杂的领域中的价值。 参数:colClasses 字符。须承担一个班的向量为列。必要时,回收或如果被命名为特征向量,未指定的值是NA。...否则需要有一个as从methods转换到指定的正规类的方法(包"character")。请注意,colClasses指定每列(而不是每个变量)等行名称(如有)列。

    8.2K102

    day6-白雪

    ,例如下次在进到rstudio的话,查看镜像,又不在了,怎么办呢说起来这个,就必须提到Rstudio最重要的两个配置文件:在刚开始运行Rstudio的时候,程序会查看许多配置内容,其中一个就是.Renviron...,先读一下.Rprofile中的代码用file.edit('~/.Rprofile') #编辑.Rprofile之后在脚本编辑区输入设置镜像的代码保存,重启Rstudio即可安装 (必须要联网)R包的安装命令...,经过前一步加工的产品才能进入后一步进一步加工,其作用是将前一步的结果直接传参给下一步的函数,从而省略了中间的赋值步骤,可以大量减少内存中的对象,节省内存。...引用自微信公众号生信星球图片count统计某列的unique值计算数据对象(vector、dataframe)的unique独特值: unique函数 从vector向量、dataframe 中 删除重复项...by = 'x') #显示2表中x与1表不同的数据 x y1 a 12 c 33 d 4简单合并bind_rows()函数需要两个表格列数相同,而bind_cols()函数则需要两个数据框有相同的行数

    90200

    玩转数据处理120题|Pandas&R

    =True) R解法 df na.omit(df) 备注 axis:0-行操作(默认),1-列操作 how:any-只要有空值就删除(默认),all-全部为空值才删除 inplace:False-...select(col3,col2,everything()) 94 数据提取 题目:提取第一列位置在1,10,15的数字 难度:⭐⭐ Python解法 df['col1'].take([1,10,15...]) # 等价于 df.iloc[[1,10,15],0] R语言解法 df[c(1,10,15) + 1,1] 95 数据查找 题目:查找第一列的局部最大值位置 难度:⭐⭐⭐⭐ 备注 即比它前一个与后一个数字的都大的数字...dist(rbind(df$col1,df$col2)) # 1 # 2 197.0102 101 数据读取 题目:从CSV文件中读取指定数据 难度:⭐⭐ 备注 从数据1中的前10行中读取positionName...文件中读取指定数据 难度:⭐⭐ 备注 从数据2中读取数据并在读取数据时将薪资大于10000的为改为高 Python解法 df2 = pd.read_csv(r'C:\Users\chenx\Documents

    6.1K41

    R语言读CSV、txt文件方式以及read.table read.csv 和readr(大数据读取包)

    看到scan引号中嵌入引号的行为。只考虑读的性格,这是所有这些,除非colClasses指定的列引用。 参数:dec 字符用于在小数点文件。 参数:row.names 向量的行名。...这可以是一个向量,给予实际的行名,或一个号码表,其中包含的行名,或字符串,包含行名称表列的名称列。如果有一个头的第一行包含列数少一个领域,在输入的第一列用于行名称。...请注意,as.is指定每列(而不是每个变量)等行名称的列(如有)及任何要跳过的列。 参数:na.strings NA值作为解释的字符串的字符向量。...空白领域也被认为是缺少逻辑,整数,数字和复杂的领域中的价值。 参数:colClasses 字符。须承担一个班的向量为列。必要时,回收或如果被命名为特征向量,未指定的值是NA。...否则需要有一个as从methods转换到指定的正规类的方法(包"character")。请注意,colClasses指定每列(而不是每个变量)等行名称(如有)列。

    2.7K20

    【生信技能树培训笔记】R语言基础(20230112更新)

    可以为 times,若为1个元素,则表示重复x向量的次数;若为长度与x向量相等的向量,则表示分别重复x中各元素的次数。 length.out,指定输出向量的长度,从左至右选择,多余的元素舍弃。...(1,15,2)+1)c(1:7) #先将8个奇数变成偶数,再取出其中7个> 1 2 4 6 8 10 12 14Tips:向量只允许一种数据类型存在,当出现不同类型的数据时,会自动根据下图的优先顺序进行转换...gene change score1 gene1 up 52 gene2 up 33 gene3 down -24 gene4 down -4从文件中读取从...默认all=FALSE,表示只取共同列或行中相同值的内容进行合并,当指定all=TRUE时,取两个数据框中指定行列的并集进行合并,任一表中的缺失值,则用NA填充。...> NA5 tony NA> group2 4.5也可分别指定按照哪个数据框中的数据为标准进行取值(即指定数据框中的数全部取,另一数据框数据取与之的交集。)

    4.1K51

    (数据科学学习手札07)R在数据框操作上方法的总结(初级篇)

    上篇我们了解了Python中pandas内封装的关于数据框的常用操作方法,而作为专为数据科学而生的一门语言,R在数据框的操作上则更为丰富精彩,本篇就R处理数据框的常用方法进行总结: 1.数据框的生成 利用...:数据框的构成向量的变量名,顺序即为生成的数据框列的顺序 row.names:对每一行命名的向量 stringAsFactors:是否将数据框中字符型数据类型转换为因子型,默认为FALSE > a 的情况返回TRUE,其余的行返回FALSE 数据框删除方法:df[!...需要删除的行,!需要删除的列] 上面的duplicated(df)已经提取出df的所有重复行的逻辑型标号,因此只需要在删除方法里设置删除的标号为duplicated(df)的返回值即可: > df[!...有时候我们会遇到含有缺省值NA的数据框,这时如果直接进行数据框内的运算,因为NA的干扰,最后的结果往往也是NA,好在R对大部分整体数值运算都有参数na.rm来控制,TRUE时会自动跳过含有NA的计算部分

    1.4K80

    【数据分析 R语言实战】学习笔记 第三章 数据预处理 (下)

    3.3缺失值处理 R中缺失值以NA表示,判断数据是否存在缺失值的函数有两个,最基本的函数是is.na()它可以应用于向量、数据框等多种对象,返回逻辑值。...第一个图由小条形的长度显示各变量缺失数据比例 第二个图显示了综合的缺失模式,可以与md.pattern()生成的结果对照观察,其中浅色方框表示完整数据,深色框表示缺失值。...3.3.3处理缺失数据 (1)删除缺失样本 过滤掉缺失样本是最简单的方式,其前提是缺失数据的比例较少,而且缺失数据是随机出现的,这样删除缺失数据后对分析结果影响不大。...is.na(salary),] > dim(data2) [1] 8 3 对于有多个变量缺失的数据,如果想直接删除所有的缺失值,可以通过na.omit()函数来完成, > data3=na.omit(data...和stack()一样,melt()也有对应的函数用来还原数据:acast()用于数组,dcast()用于数据框,其中的参数formula是一个公式,左边的每个变量都会成为新数据集中的一列,右边的变量是因子

    2K20
    领券