排除R中df中顶部和底部1%的数据

2023-12-22

对于示例数据框:

set.seed (1000)
a <- rnorm(1000)
b <- seq(1, 1000, by=1)
df <- data.frame(b, a)

我想排除数据中前 1% 和后 1%(a 列)。

我读过 R 中的修剪和分位数,但似乎无法让它们工作。

有人可以帮助解释我如何:

A。将这些四肢设置为 NA

b.从我的数据框中删除这些四肢


您可以检查每列的元素是否在 0.01 和 0.99 分位数之间,然后保留所有列都在这些分位数之间的行

keep <- Reduce(`&`, lapply(df, function(x) x >= quantile(x, .01) 
                                            & x <= quantile(x, .99)))


df[keep,]

如果您只想排除其中的行a在 0.01 和 0.99 分位数之外,你可以这样做

keep <- df$a >= quantile(df$a, .01) & df$a <= quantile(df$a, .99) 

df[keep,]

Or

keep <- lapply(df, function(x) x >= quantile(x, .01) 
                               & x <= quantile(x, .99))


df[keep$a,]

将极值设置为NA, 你可以这样做:

keep <- df$a >= quantile(df$a, .01) & df$a <= quantile(df$a, .99) 

df[!keep, 'a'] <- NA

data.table让这变得更容易。例如,将行保留在a在 0.01 和 0.99 分位数之间,你可以这样做

library(data.table)
setDT(df)

df[a %between% quantile(a, c(.01, .99))]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

排除R中df中顶部和底部1%的数据 的相关文章

  • 匹配字符串在多列上循环

    我有来自一项开放式调查的数据 我有一个注释表和一个代码表 代码表是一组主题或字符串 我正在尝试做的事情 检查代码表中相关列中是否存在开放式注释中的单词 字符串 在评论表中为特定主题添加一个新列 并添加一个二进制 1 或 0 来表示已标记哪些
  • R 用簇绘制热图,但隐藏树状图

    默认情况下 Rheatmap将聚集行和列 mtscaled as matrix scale mtcars heatmap mtscaled scale none 我可以禁用集群 heatmap mtscaled Colv NA Rowv N
  • 如何在 R 中使用别名运行系统可执行文件?

    假设我正在 R 中运行系统命令来运行executable inputfile lt path myfile txt 我该如何更换 path myfile txt在下面的命令中inputfile如下面命令所示 system executabl
  • 获取非零数据的列意味着

    R 可以获得数据帧非零值的 colMeans 吗 data lt data frame col1 c 1 0 1 0 3 3 col2 c 5 0 5 0 7 7 colMeans data 1 33 4 我想要这样的东西 mean dat
  • 在 R 中根据时间序列数据制作 3D 曲面

    我有一个大型数据集 我想从中制作 3D 表面 我希望 x 轴为日期 y 轴为时间 24 小时 z 轴 高度 为我的值 我是 R 初学者 所以越简单越好 http www quantmod com examples chartSeries3d
  • R:从本地 tar.gz 安装 R 软件包时找不到“make”

    R 包ConvCalendar不再位于 Cran 存储库中 请参阅here https cran r project org web packages ConvCalendar index html 然而 因为我在之前的项目中大量使用了这个
  • 在ggplot2中绘制大多边形地图的小区域

    我有一个 shapefile 我使用它在 ggplot2 中进行了强化和绘制geom polygon 我怎样才能只绘制这张地图的一小部分区域 我的完整地图看起来不错 但我的小区域很混乱 这是一个工作示例 这个小形状文件可以从以下位置获得 h
  • 将公式传递给 R 中的函数?

    对此的任何帮助将不胜感激 我正在使用 Lumley 调查包 并试图简化我的代码 但遇到了一些小障碍 在我的代码中调用包中的 svymean 函数如下 其中第一个参数是指示我想要哪些变量的公式 第二个参数是该数据集 svymean hq eh
  • 拆分并保存在新的 data.frames 中

    我有一个大 data frame 144 列 我想将其分成每组 3 列 子文件或子 data frame 然后将子 data frame 保存在单独的文件中 换句话说 file1 将包含从 1 到 3 的列 file2 将包含从 6 到 9
  • 是否有 R 函数可以将这些数据从长形重塑为宽形?

    数据现在看起来如何 Coach ID Student score 1 A 8 1 B 3 2 A 5 2 B 4 2 C 7 看起来像这样 Coach ID Student score student 2 score 2 student 3
  • 如果我有一个包含计数的表格,如何获得直方图/摘要统计数据? [复制]

    这个问题在这里已经有答案了 我习惯了像这样的观察向量c 1 1 1 3 4 我可以在上面看到汇总统计数据和绘制直方图等 但现在我发现自己拥有相同的数据 但采用如下压缩格式 value numObs 1 3 3 1 4 1 当数据以data
  • 挖泥机子集 (MuMIn) - 如果存在主效应,则必须包括交互作用

    我正在使用 dredge MuMIn 进行一些探索性工作 在此过程中 我想将两个变量设置为仅当它们之间存在相互作用时才允许一起出现 即它们不能仅作为主要效果一起出现 使用样本数据 我想挖掘模型 fm1 尽管它可能没有意义 如果变量 GNP
  • 如何在 R 中更新和重新编译 nlme 源代码

    我正在尝试更新 nlme 包 以便我可以在 gls 命令中使用大圆距离进行相关性 我正在尝试使用指定的更改来编辑源代码here http r 789695 n4 nabble com nlme spatial autocorrelation
  • 根据R中的特定行值将数据帧拆分为多个数据帧

    我需要根据数据帧中重复出现的标题行将数据帧拆分为 17 872 个数据帧 我需要将新创建的数据框存储在列表中 我的数据框看起来像 0 1 2 32 Alert Type Response 33 w1 x1 y1
  • 在另一个函数中定义一个函数的优雅方式

    我想构建 f lt function g lt function x x 2 list 这样我就可以使用调用f g 4 并有list 导致list 16 一般来说我会在里面定义几个临时函数f用户在调用时可以调用f 我已经尝试过assign
  • 使用 ggplot 将条形图的列与线图的点对齐

    当线图的点与条形图的条具有相同的 x 轴时 有什么方法可以使用 ggplot 将它们对齐 这是我尝试使用的示例数据 library ggplot2 library gridExtra data data frame x rep 1 27 e
  • 为什么我收到保存错误、软盘错误的消息?

    我最近更新了 R 和 R studio 当我尝试保存文件时 收到一条错误消息 保存 文件名 时出错 驱动器中的软盘错误 将 2 卷序列号 3 插入驱动器 1 这是第一次看到这个错误信息 不知道该怎么办 我也无法 另存为 感谢您的帮助 尝试使
  • 在 r 中使用 SSasymp

    我想我不知道如何在 r 中使用 SSasymp 函数 我想为我的项目创建一个渐近函数 我试过这个 c lt seq 0 200 0 5 d lt SSasymp c 500 0 log 50 plot c d type l log 50 应
  • 删除ggplot2 geom_bar中没有数据的日期列[重复]

    这个问题在这里已经有答案了 我想隐藏 ggplot2 中没有数据的列 这是使用 nycflights13 库的可重现示例 library nycflights13 library dplyr library ggplot2 small da
  • 在前两个冒号上分割字符串

    我想在前两个冒号上拆分一列字符串 但不在任何后续冒号上拆分 my data lt read table text my string some data 123 34 56 78 100 87 65 43 21 200 a4 b6 c888

随机推荐

  • 如何使用 MinGW 创建微型 PE (Win32) 可执行文件

    我有以下 C 程序 include
  • 如何在执行脚本之前自动清除 VSCode 中的终端? [复制]

    这个问题在这里已经有答案了 我目前正在使用 VS Code 来学习 Python 所以我必须每分钟运行 10 15 次脚本 只是做一些小的编辑并学习所有的东西 我正在 VS code 的集成终端中运行脚本 所以显然终端变得非常混乱 我必须始
  • Anaconda 与 Python 有何关系?

    我是初学者 我想学习计算机编程 所以 现在我已经开始自学Python 并掌握了一些C和Fortran编程的知识 现在 我已经安装了Python 3 6 0版本 并且我一直在努力寻找合适的文本来学习这个版本的Python 甚至在线讲座系列也要
  • 类型转换和类型转换之间的区别? [复制]

    这个问题在这里已经有答案了 可能的重复 铸造和转换之间有什么区别 https stackoverflow com questions 3166840 what is the difference between casting and co
  • 将配置文件的内容读取到与其关联的 dll 中

    我已将字符串保存在 dll 应用程序的设置中 我想找回它们 这是我的 dll 的配置文件
  • 如果已命中断点 A,则启用断点 B

    我经常发现自己在代码中的某处设置断点 A 并在命中断点时手动启用一个或多个断点 一个典型的情况是当我正在调试单元测试并且不关心前面的测试时 void testAddZeros Number a 0 Number b 0 Number res
  • 给定 WSDL 的 Web 服务客户端

    我正在尝试用 Java 创建一个 Web 服务客户端 我不知道该怎么做 这是 WSDL 的 URL https testservices gatewayedi com PayerList payerlist asmx wsdl https
  • 合并多列,排除空值

    我试图弄清楚如何组合多个列 不包括 NA 值 输入数据框 data lt data frame id c 1 3 Item1 c Egg Item2 c Chicken Flour Item3 c Bread Item4 c Milk 所需
  • docker 中的 Plotly dash 不加载资源

    我有一个多页破折号应用程序 在本地运行时可以按预期工作 女服务员服务 listen 0 0 0 0 80 web app wsgi application 因此资产文件夹中的所有资产都正确加载 图像加载了src app get asset
  • 有没有更好的方法来计算中位数(而不是平均值)

    假设我有以下表定义 CREATE TABLE x i serial primary key value integer not null 我想计算的中位数value 不是AVG 中位数是将集合分为包含相同数量元素的两个子集的值 如果元素个数
  • Tensorflow Callback:如何将最佳模型保存在内存而不是磁盘上

    我使用 Tensorflow 使用以下函数进行回归 import tensorflow as tf def ff args kwargs model tf keras models Sequential model add tf keras
  • jQuery 对象和 DOM 元素

    我想了解 jQuery 对象和 DOM 元素之间的关系 当 jQuery 返回一个元素时 它显示为 object Object 在警报中 什么时候getElementByID返回一个显示为的元素 object HTMLDivElement
  • 重载+以支持元组

    我希望能够用 python 写这样的东西 a 1 2 b 3 4 c a b c would be 4 6 d 3 b d would be 9 12 我意识到您可以重载运算符以与自定义类一起使用 但是有没有办法重载运算符以与对一起使用 当
  • 在 Linux 中查找最小文件的名称?

    假设您必须找到目录中第四小的 非隐藏 文件的名称 执行此操作的正确命令是什么 假设我是一个只知道的人ls l head tail line and awk print 陈述 From man ls S按大小降序对输出进行排序 r反转输出的顺
  • Thread.sleep() 停止我的绘画?

    我正在制作一个程序 尝试为一张在屏幕上移动的卡片设置动画 就像您实际上从桌子上绘制它一样 这是动画的代码 public void move int x int y int curX this x the entire class exten
  • sklearn:用户定义的时间序列数据交叉验证

    我正在尝试解决机器学习问题 我有一个特定的数据集时间序列元素 对于这个问题 我使用著名的 python 库 sklearn 这个库中有很多交叉验证迭代器 还有几个迭代器用于您自己定义交叉验证 问题是我真的不知道如何定义时间序列的简单交叉验证
  • 为什么“允许的内存大小已耗尽”?

    我正在编写一个批处理脚本并得到一个Allowed memory size of 134217728 bytes exhausted error 我不明白为什么内存会被填满 我尝试取消设置 row变量 但这并没有改变什么 这是我的代码 sql
  • 并发和内存模型

    我在看this http channel9 msdn com posts AFDS Keynote Herb Sutter Heterogeneous Computing and C AMPHerb Sutter 关于 GPGPU 和新的
  • Sublime Text 2 - 在解释器中运行选定的 python 代码

    在 Sublime Text 编辑器中编辑 python 脚本时 我想逐行运行脚本 或者在嵌入式解释器中逐块运行脚本 有没有一个方便的方法来做到这一点 对我来说完美的方法是 选择几行代码 点击快捷方式 这将在解释器中运行选定的代码 我认为有
  • 排除R中df中顶部和底部1%的数据

    对于示例数据框 set seed 1000 a lt rnorm 1000 b lt seq 1 1000 by 1 df lt data frame b a 我想排除数据中前 1 和后 1 a 列 我读过 R 中的修剪和分位数 但似乎无法