如何在R中循环并修改多个数据帧

2024-01-10

我有数据帧 A、B、C...并且想以相同的方式修改每个数据帧,例如对所有数据框中存在的因子的因子级别进行重新排序:

A = data.frame( x=c('x','x','y','y','z','z') )
B = data.frame( x=c('x','y','z') )
C = data.frame( x=c('x','x','x','y','y','y','z','z','z') )

A$x = factor( A$x, levels=c('z','y','x') )
B$x = factor( B$x, levels=c('z','y','x') )
C$x = factor( C$x, levels=c('z','y','x') )

如果有大量数据帧和/或需要进行大量修改,这会变得很费力。我怎样才能简洁地做到这一点,使用循环或更好的东西?一种简单的方法,例如

for ( D in list( A, B, C ) ) {
D$x = factor( D$x, levels=c('z','y','x') )
}

不起作用,因为它不会修改原始数据帧。

编辑:添加了 A、B 和 C 的定义以使其可重现。


关于 R 需要注意的一件事是,关于任务 http://stat.ethz.ch/R-manual/R-devel/library/base/html/assignOps.html, <-是传递性的,而=不是。因此,如果您的数据框在这方面都是相同的,您应该能够执行以下操作:

A$x <- B$x <- C$x <- factor( C$x, levels=c('z','y','x') )
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在R中循环并修改多个数据帧 的相关文章

随机推荐

  • C# 中的位图(签名的)比较

    我们有一个有趣的项目 要求我们比较两个签名的两个黑白位图 并判断它们是否是同一个人的签名 由于这只是两个加载的位图 而不是从平板电脑捕获的数据 因此该方法与正常的签名识别略有不同 我认为需要执行以下步骤 将位图裁剪为仅签名 尝试进行某种旋转
  • 我可以用volley做同步请求吗?

    想象一下我正在使用一个已经有后台线程的服务 我可以在同一线程中使用 volley 发出请求 以便回调同步发生吗 原因有两个 首先 我不需要另一个线程 创建它会很浪费 其次 如果我处于 ServiceIntent 中 线程的执行将在回调之前完
  • 如何将公历日期转换为伊斯兰(回历)日期?

    我知道这个问题被问了很多次 但我没有找到正确的方法 我有一个String日期如 01 08 1994 我想把它转换成Hijri日期 使用IslamicCalendar java time DateTimeFormatter dateForm
  • 如何命名我们的 JS 以与 Rails 资产管道一起使用

    我理解 Rails 3 1 资产管道背后的原因 我们将所有 JS 编译在一个整洁的 可缓存的文件中 以提高性能 太好了 我们想要那个 然而 加载所有内容也意味着我们必须非常小心 如果我们附加了一些 JS 则不要在多个页面上使用某个 ID 或
  • Razor - 使用 foreach,每第 n 项插入 html

    我使用 Razor 和 MVC 5 在页面上输出大量项目列表 这是我目前拥有的内容 foreach var item in Model Items a item Name a 我想做的是输出以下内容 div class tab 0 a It
  • 在 Eclipse IDE 中使用 GCC 编译器编译 RTX 内核文件

    我们在KEIL IDE中有一个LPC2148的项目 里面有RTX内核程序以及其他程序 它是由ARM CC编译的 现在我们需要将IDE从KEIL ARM CC 更改为Eclipse GCC 当我们尝试在 Eclipse GCC 编译器中编译它
  • 如何在 JS 类中定义私有方法

    我试图为类定义一个私有方法 以测试不能从类外部调用此类方法 但是 即使我使用规范中指示的语法 我也会遇到错误 我还查了MDN 这是我的班级的代码 class CoffeeMachine waterLimit 200 checkWater v
  • 将州和城市与可能的多个单词相匹配

    我有一个类似以下元素的 Python 列表 Alabama edit Auburn Auburn University 1 Florence University of North Alabama Jacksonville Jacksonv
  • 使用 lambda 表达式从 List 获取 N 个最大数字

    这是我的清单 List
  • 为什么基于 RB 树的 C++ std::set 的插入时间基准得到的是常数而不是对数曲线?

    我在以下位置比较了 BST 和 Heap 堆与二叉搜索树 BST https stackoverflow com questions 6147242 heap vs binary search tree bst 29548834 29548
  • 从反应本机的共享文件夹导入

    我正在创建一个 monorepo 来保存我的 React Web 应用程序和 React Native 应用程序 因为它们共享许多通用代码 我想要得到的设置是 Project web native file js should be abl
  • 是否可以使用phoneGap在模拟器中显示动画gif图像

    我在android中使用phonegap框架工作 我的问题是动画gif图像在模拟器中不起作用 在浏览器中它工作正常 我的问题是动画图像不支持phonegap吗 我刚刚在设备和模拟器上测试了这一点 好消息是 它可以在设备上运行 但不能在模拟器
  • 使用 AutoHotKey 右键单击​​ Windows 10 中的托盘图标

    在 Windows 7 中 我有一个 AutoHotKey 脚本 可以自动右键单击托盘图标 Include A Scriptdir TrayIcon ahk TrayIcon Button CCC exe R 其中使用了 TrayIcon
  • 在iOS中录制视频时播放音频文件

    我想在用相机录制时播放音频文件 我使用 AVAudioPlayer 来播放音频 使用 AVCamCaptureManager 来录制 但是当音频开始播放时 预览屏幕冻结 我应该怎么办 感谢您的帮助 这是代码 我正在研究 AVCam 示例 这
  • SQL Server 树查询

    我需要一些帮助是 MS SQL Server 查询 我算不上一个 DBA 我有一个带有组织表的应用程序 该表由父子关系组成 CREATE TABLE dbo Organizations OrgPK int IDENTITY 1 1 NOT
  • 右键单击上下文菜单项是否有最大限制? [复制]

    这个问题在这里已经有答案了 我正在使用以下命令创建自定义右键单击子菜单 在 Windows 注册表中 SubCommands 但是在添加更多选项后 最后的一些选项消失了 允许携带的物品数量是否有上限 如果是这样 有没有办法解决 我使用的是
  • 使用 CSS 的文本突出显示(标签效果)

    我想创建类似于标签的文本样式 看这里 我几乎可以只使用以下方法来做到这一点 http jsfiddle net STApE http jsfiddle net STApE p display inline background yellow
  • Doxygen copydoc 标签可重用代码示例

    我想使用 copydoc 标签重用示例代码块 来解释一下问题 假设我有两个已记录的函数 Aquires resource Resource AquireResource int id Releases resource void Relea
  • Excel VBA:写入mysql数据库

    我想在 Excel 中编写一个宏来写入 mysql 数据库 有人可以让我开始做这个吗 您可以使用连接字符串和 ADO 连接到 MySQL http support microsoft com kb 246335 Set cn CreateO
  • 如何在R中循环并修改多个数据帧

    我有数据帧 A B C 并且想以相同的方式修改每个数据帧 例如对所有数据框中存在的因子的因子级别进行重新排序 A data frame x c x x y y z z B data frame x c x y z C data frame