从非对称数据框中获取方阵

2023-12-05

我是 R 的初学者。我有一系列有关已婚人士姓氏的数据。

    Id_mar  Wife  Husband
1      1    Smith Johnson
2      2    Smith  Carter
3      3    White  Carter
4      4    Wang   Smith
5      5    White  Carter

我需要以方阵的形式得到它(以便能够以各种方式操纵它)。 所以我想我必须首先投射它:

data.melt<-melt(dat.mar,id=c('Wife','Husband'))
dat.melt$value<-1    
dat.cast<-cast(dat.melt, Wife~Husband, length)

       Wife Carter Johnson Smith
    1 Smith      1       1     0
    2  Wang      0       0     1
    3 White      2       0     0

然后将其转化为矩阵:

dat.mat<-as.matrix(dat.cast)
      Carter Johnson Smith
Smith      1       1     0
Wang       0       0     1
White      2       0     0

但是现在,如何准确地添加列和行,以便获得行和列按正确字母顺序排列的方阵?看起来像这样的东西:

      Carter Johnson Smith    Wang   White
Carter     0       0     0       0       0
Johnson    0       0     0       0       0
Smith      1       1     0       0       0
Wang       0       0     1       0       0
White      2       0     0       0       0

根据预期的输出,我们可以使用table(正如@David Arenburg 在评论中提到的)factor转换后的“妻子”和“丈夫”列,指定levels as the sorted unique两列的元素 ('Un1')

 Un1 <- sort(unique(unlist(df1[-1])))
 table(factor(df1$Wife, levels=Un1), factor(df1$Husband, levels=Un1))
 #          Carter Johnson Smith Wang White
 # Carter       0       0     0    0     0
 # Johnson      0       0     0    0     0
 # Smith        1       1     0    0     0
 # Wang         0       0     1    0     0
 # White        2       0     0    0     0

或者我们可以使用mtabulate from qdapTools.

 library(qdapTools)
 mtabulate(as.data.frame(t(df1[-1])))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从非对称数据框中获取方阵 的相关文章

  • R foreach问题(某些进程返回NULL)

    我遇到了问题foreach我正在 R 中使用的程序的一部分 该程序用于运行不同参数的模拟 然后将结果返回到单个列表 然后用于生成报告 当并非所有分配的模拟运行都在报告上实际可见时 就会出现问题 从各方面来看 似乎只有分配的运行的一个子集实际
  • 如何计算R中移动窗口内的平均斜率

    我的数据集包含2个变量y 和 t 05s y 每 05 秒测量一次 我正在尝试计算移动中的平均坡度20秒窗口 即计算第一个 20 秒斜率值后 窗口向前移动一个时间单位 05 秒 并计算下一个 20 秒窗口 在以下位置生成连续 20 秒斜率值
  • 使用 pracma::findpeaks 识别持续峰值

    我的语法有问题peakpat内的选项findpeaks内的函数pramcaR 包 v 2 1 1 我使用的是 R 3 4 3 x64 Windows 我希望该函数能够识别可能有两个重复值的峰值 并且我相信该选项peakpat这就是我能做到的
  • 多功能测试仪替代 system.time

    我已经看到 我认为是这样 使用了类似于 system time 的函数 它可以同时评估多个函数的时间并输出一个输出 我不记得它是什么 并且用我正在使用的术语进行互联网搜索并没有得到我想要的响应 有人知道我正在谈论的功能的名称 位置吗 你想要
  • 如何使用 R 计算成为列表中中位数的概率?

    假设我有以下数据集 其中显示了假设实验的每个状态的三个观察结果的列表 state lt c Iowa Minnesota Illinois outcome lt list c 5 11 11 c 3 12 8 c 9 14 2 dat lt
  • 绘制点之间的所有线

    我有以下 R 代码 x lt c 0 01848598 0 08052353 0 06741172 0 11652034 y lt c 0 4177541 0 4042247 0 3964025 0 4074685 d lt data fr
  • 在 R 中绘制 Likert 变量的堆积条形图

    假设我有一个如下所示的数据框 P Q1 Q2 1 1 4 1 2 2 3 4 3 1 1 4 其中的列告诉我哪个人相应地回答了问题 q1 q2 中的哪一个 这些问题需要按照 4 分李克特量表进行回答 例如 批准 表示 1 稍微批准 表示 2
  • twitterR 和 ROAuth R 软件包安装

    我在安装 CRAN 上的 twitteR 和 RAOuth 软件包时遇到一些问题 我尝试了几种不同的方法 在 Windows 下使用源代码 在 Ubuntu 下使用 RStudio 我尝试了以下命令 sudo apt get install
  • 在 R 中创建虚拟变量,排除某些情况为 NA

    我的数据看起来像这样 V1 V2 A 0 B 1 C 2 D 3 E 4 F 5 G 9 我想创建一个虚拟变量R where 0 1 1 2 3 4 and NA 0 5 9 应该很简单 有人可以帮忙吗 我们可以转换V2 into a fa
  • R 中的列乘以子字符串

    假设我有一个数据框 其中包含多个组件及其在多个列中列出的属性 并且我想对这些列运行多个函数 我的方法是尝试将其基于每个列标题中的子字符串 但我无法弄清楚如何做到这一点 下面是数据框的示例 Basket F Type 1 F Qty 1 F
  • 朴素贝叶斯分类器仅基于先验概率做出决策

    我试图根据推文的情绪将推文分为三类 买入 持有 卖出 我正在使用 R 和包 e1071 我有两个数据框 一个训练集和一组需要预测情绪的新推文 训练集数据框 text sentiment this stock is a good buy Bu
  • ddply 和aggregate 之间的区别

    有人可以通过以下示例帮助我了解聚合和 ddply 之间的区别 数据框 mydat lt data frame first rpois 10 10 second rpois 10 10 third rpois 10 10 group c re
  • 基于时间窗口的不规则时间序列的优化滚动函数

    有没有办法使用 rollapply 来自zoo包或类似的东西 优化功能 rollmean rollmedian等 使用基于时间的窗口计算滚动函数 而不是基于大量观察的函数 我想要的很简单 对于不规则时间序列中的每个元素 我想计算一个具有 N
  • R:如何获取该月的周数

    我是 R 新手 我想要该日期所属月份的周数 通过使用以下代码 gt CurrentDate lt Sys Date gt Week Number lt format CurrentDate format U gt Week Number 3
  • read_html(url) 和 read_html(content(GET(url), "text")) 之间的区别

    我正在看这个很棒的答案 https stackoverflow com a 58211397 3502164 https stackoverflow com a 58211397 3502164 解决方案的开头包括 library httr
  • R“错误:“}”中出现意外的“}”[重复]

    这个问题在这里已经有答案了 我有一个字符串变量 对于缺少数据的情况 它具有 空值 我想将 空值 重新编码为缺失 而不是说 空值 我正在尝试编写一个循环来删除这些 空值 条目 但我不断收到错误 错误 中出现意外的 for row in dat
  • 删除极坐标图边缘的多余空间和圆环

    我有一个极坐标图ggplot2我已经非常接近完成 相当简单的情节 我已经能够在删除矩形边框方面获得帮助 但我不需要删除最后一个范围轮廓与带有方位角标签的绘图周围的环之间的额外空间 我希望该图的边界为 15 000 而不是 15 214 我编
  • 条件字体颜色 R Markdown

    我无法找到一种方法来根据变量的值 gt 0 0 或 r setup include FALSE x lt 4 This is an R Markdown document r if x gt 0 textcolor red Markdown
  • R:使用 tidyverse 将 NA 替换为 df 中的其他变量

    我想使用 tidyverse 替换 df 中的 NA 值 我想要的值应该从其他列中计算出来 input ID X1 X2 X3 A 0 96 NA 0 97 B 1 00 NA 1 01 C 0 98 0 03 NA A 1 00 NA 1
  • 使用 template.docx 从 Shiny App 编织 Word 文档

    我正在尝试使用 template docx 文件从闪亮的应用程序编写一个 Word 文档 我收到以下错误消息 pandoc exe template docx openBinaryFile 不存在 没有这样的文件或目录 以下 3 个文件当前

随机推荐

  • WCF 客户端使用证书和用户名/密码凭据?

    我正在使用 ASP NET 公司内部的 Web 服务 我使用 svcutil exe 连接到服务并从 wsdl 生成绑定和类 我可以连接到开发版本 该版本不需要身份验证 现在我们正在增加安全性 我的新 URI 使用 https 但还需要用户
  • 要列出的结果集

    我想用我的数据库字段值创建一个列表 有 2 列 名字和姓氏 我想创建一个列表 将名称列中的所有名称存储在字段中 然后添加到我的 DTO 中 这可能吗 您可以遵循的步骤 首先你需要有一个List
  • WinRT C# - 创建转换器字符串到字符串以绑定 Gridview

    今天我来找你是为了一个 小 问题 我不知道如何创建一个简单的转换器 因为这是第一次 而且我没有找到一个简单的例子 我想为 gridview 绑定创建一个 字符串到字符串 转换器 这是针对图像源的 我从一个对象中获取一个字符串 这是图像的名称
  • 如何保持 sql 依赖关系达到其目的

    我有一个控制台应用程序 我想继续观察数据库表中特定列的变化 我通过互联网阅读 发现 sql 依赖关系很适合我的目的 我开始了解它并做了以下事情 创建一个类 在构造函数中 我调用了静态函数start我调用了一个具有所有 sql 依赖项设置的函
  • 如何使用 Perl 查找和替换 XML 中的文本?

    我的 XML 文件看起来像这样
  • 如何将 DWORD RGBA 转换为整数?

    我必须将 DWORD 无符号长整型 RGBA 转换为四个 int 变量 R G B 和 A 到目前为止 我有这个函数将 4 个整数转换为 DWORD unsigned long RGBA2DWORD int iR int iG int iB
  • 启动时停止背景音频

    我可以通过在 info plist 文件中添加设置来使应用程序在移动到后台时播放音频 但是 当其他一些iOS应用程序播放背景音频时 当当前应用程序进入前台时 如何停止其他应用程序调用的背景音频呢 查看 Apple 的 AVAudioSess
  • MongoCommandException:命令失败,错误 8000 (AtlasError):“未发送 SNI 名称,请确保使用 MongoDB 3.4+ 驱动程序/shell。”

    我正在使用 Java 11 Maven 项目 作为 mongodb 免费层集群 版本 4 0 13 我正在尝试通过连接字符串 对于 3 6 驱动程序或更高版本 进行连接 例如 mongodb srv user email protected
  • 覆盖 Swift 中存储的属性

    我注意到编译器不允许我用另一个存储值覆盖存储的属性 这看起来很奇怪 class Jedi var lightSaberColor Blue class Sith Jedi override var lightSaberColor Red C
  • 汇编 Linux 系统调用与汇编 OS X 系统调用

    我在 Mac 上运行汇编代码时遇到问题 我目前正在阅读 Jeff Duntemann 的书 Assembly Step by Step 问题是它专注于为 32 位 Linux 系统编写汇编 我使用的是 64 位 mac os x 系统 我仍
  • 有条件参考

    我正在编写一个应用程序 它通过Component Object Model图书馆 我必须在 Visual Studio 项目本身中引用此 COM 库 以便我编写的应用程序能够正常工作 还有一个 NET 包装器库 我必须在 Visual St
  • ios13 深色模式更改无法被 tableview Cell 识别?

    我正在检查我现有的应用程序是否可以与 ios 13 新引入的黑暗模式功能正常工作 一切似乎都工作正常 只有我的一个表视图中的单元格背景没有根据模式 暗 亮 刷新 如果应用程序以深色模式启动 单元格也会显示正确的深色背景 如果应用程序处于后台
  • 我可以使用 unix utils 以编程方式将 ANSI 控制代码“烧入”文件吗?

    示例 我开始录音script 并尝试输入echo test但省略了 o 所以我退格来纠正它 When I cat typescript一切看起来都很正常 因为代码被解释了 但如果我使用less or vim I see ech test H
  • 使用 Java 的 Path2D 创建钢笔工具时出现的问题

    我一直在尝试使用 Path2D 类与鼠标侦听器一起为我的 Java 绘图程序创建一个钢笔工具 但结果令人困惑 该工具将工作几秒钟 但随后整个应用程序将冻结并必须关闭 这里没有发生异常 程序只是冻结 这是演示该问题的 SSCCE import
  • 如何使用 Jquery 阻止浏览器调用基本身份验证弹出窗口并处理 401 错误?

    我需要使用基本身份验证发送授权请求 我已经使用 jquery 成功实现了这一点 但是 当我收到 401 错误时 基本身份验证浏览器弹出窗口将打开 并且不会调用 jquery ajax 错误回调 我最近也面临这个问题 由于您无法更改浏览器在出
  • 将准备好的语句占位符括在单引号中

    在中创建准备好的语句时mysqli 我应该将字符串值占位符括在单引号中吗 IE 我应该写 INSERT INTO Person Name VALUES or INSERT INTO Person Name VALUES INSERT INT
  • Webdrivers::网络错误 - Mac64 M1 - ChromeDriver

    我的 Capybara Selenium Webdriver 设置在尝试连接 ChromeDriver 时失败 看来他们发布了一个没有 M1 版本的版本 可以在 Chromedriver API 中找到https chromedriver
  • IF 语句始终为真

    我有一个 radwindow 用来向应用程序中的用户显示错误消息 我的目标如下 如果该消息不是警告 错误 我希望用户在弹出的 radwindow 上单击 确定 时重定向 为了实现此目的 当操作成功时 我将 HiddenField 值设置为
  • 使用 mongoose populate 过滤数据

    我有两个数据结构 数据库 和 组件 const DatabaseSchema mongoose Schema components type Schema Types ObjectId ref Components required fal
  • 从非对称数据框中获取方阵

    我是 R 的初学者 我有一系列有关已婚人士姓氏的数据 Id mar Wife Husband 1 1 Smith Johnson 2 2 Smith Carter 3 3 White Carter 4 4 Wang Smith 5 5 Wh