在数据框中创建“升序 ID”

2024-02-04

我在 R 中有这些数据:

column1 = c("A", "B", "C")

column2 = c("AA", "BB", "CC", "DD")

column3 = c("AAA")


na.pad <- function(x,len){
    x[1:len]
}

makePaddedDataFrame <- function(l,...){
    maxlen <- max(sapply(l,length))
    data.frame(lapply(l,na.pad,len=maxlen),...)
}


d = makePaddedDataFrame(list(x=column1,y=column2,z=column3))

     x  y    z
1    A AA  AAA
2    B BB <NA>
3    C CC <NA>
4 <NA> DD <NA>
  • 我想为该表中的每个元素提供“升序 ID”,这样 NA 就不会分配 ID - 例如:

在上面的例子中:

  • X 列的第一行指定为 id = 1,X 列的第二行指定为 id = 2,X 列的第三行指定为 id = 3,并且跳过 X 列的第四行,因为有是一个 NA

  • 由于 Y 列中没有 NA,因此 Y 列的第一行被指定为 id = 4(从前一行中选取),Y 列的第二行被指定为 id = 5,Y 列的第三行是分配为 id = 6,并且 Column Y 的第四行分配为 id = 7

  • 由于除第一行外,Z 列中的所有行均为 NA,因此仅将 Z 列的第一行指定为 id = 8,并跳过所有其他行。


这是一个选项replace- 创建一个包含非 NA 元素的“d”逻辑矩阵(!is.na(d)), replace这些元素,具有序列 (sum(!is.na(d))- 返回非 NA 的总数,seq_len,给出该计数的序列)并分配(<-) 将其添加到新列pasteing 现有列名上的 '_id'

d[paste0(names(d), "_id")] <- replace(d, !is.na(d), seq_len(sum(!is.na(d))))

-output

> d
     x  y    z x_id y_id z_id
1    A AA  AAA    1    4    8
2    B BB <NA>    2    5 <NA>
3    C CC <NA>    3    6 <NA>
4 <NA> DD <NA> <NA>    7 <NA>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在数据框中创建“升序 ID” 的相关文章

  • 当设置 coord_fixed 时,ggplot/shiny 中的鼠标悬停坐标是错误的

    我正在使用问题中的答案 当您将鼠标悬停在闪亮的 ggplot 上时出现工具提示 https stackoverflow com questions 27965931 tooltip when you mouseover a ggplot o
  • ggplot:如何限制条形图中的输出,以便仅显示最频繁出现的情况?

    我几个小时以来一直在寻找这个简单的东西 但没有结果 我有一个数据框 其中一列为变量 国家 地区 我想要两件事以下 绘制最常见的国家 地区 最常见的位于顶部 找到部分解决方案EDIT找到完整的解决方案 gt gt 重点问题是根据频率限制条形图
  • case_when 与部分字符串匹配和 contains()

    我正在使用一个数据集 其中有许多名为 status1 status2 等的列 在这些列中 它表示某人是否豁免 完整 注册等 不幸的是 豁免投入并不一致 这是一个示例 library dplyr problem lt tibble perso
  • 使用点阵个性化 R 上显示的 X 轴值

    我收集了大量包含日期 客户端及其 NFS 使用情况的数据 我正在使用lattice R包进行绘图 正如对超级用户的建议 https superuser com questions 523195 plot custom log data on
  • 使用数据帧的 R 中的 EWMA 波动性

    我正在尝试从一系列股票每日收益中获取 EWMA 波动性 这些收益来自一个名为base retorno diario Data IBOV ABEV3 AEDU3 ALLL3 BBAS3 BBDC3 BBDC4 1 2000 01 04 0 0
  • 扩展数据框以使其具有与原始行中两列的范围一样多的行[重复]

    这个问题在这里已经有答案了 我有一个数据框如下 structure list symbol c u n v i a start c 9L 6L 10L 8L 7L end c 14L 15L 12L 13L 11L Names c symb
  • R 中 SVG 图形的最佳设备? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我想从 R 导出 SVG 图形 似乎有两种选择 RSvgDevice 和 Cairo 有人可以对这些包发表评论吗 是默认的还是明显比另一个
  • 在 Google Colab 上的 R 笔记本中安装 python 库

    我正在尝试在 Google Colab 上的 R 笔记本中安装 python 库 为此我使用 reticulate 包 library reticulate py install pandas 但我得到的结果是这个错误 Error coul
  • 如何将参数从 Excel/VBA 传递到 Rstudio 中的脚本

    我正在尝试使用 Rstudio 从 VBA 打开 R 脚本 同时将参数传递给 R 脚本 然后我可以使用 commandArgs 访问该脚本 该问题与此处描述的问题非常相似 WScript Shell 用于运行路径中包含空格且来自 VBA 的
  • 在 RGL 中将立方体绘制到 3D 散点图中

    我正在尝试向 3D 散点图添加较小的立方体 网格 具有指定边长 我希望立方体位于原点 我该怎么做呢 我已经玩过cube3d 但我似乎无法将立方体正确定位 也无法使其成为网格 因此我可以看到它包含的数据点 这是我所拥有的 library rg
  • R:改变堆积条形图的颜色

    library ggplot2 df2 lt data frame supp rep c VC OJ each 3 dose rep c D0 5 D1 D2 2 len c 6 8 15 33 4 2 10 29 5 head df2 g
  • 使用“assign()”为列表项分配值

    首先了解一些背景 我写了一个中缀函数 本质上取代了这个习惯用法 x length x 1 lt y 或者简单地说x lt append x y 对于向量 这里是 lt function x y xcall lt substitute x x
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP
  • 如何在R中实现countifs函数(excel)

    我有一个包含 100000 行数据的数据集 我尝试做一些countifExcel 中的操作 但速度慢得惊人 所以我想知道R中是否可以完成这种操作 基本上 我想根据多个条件进行计数 例如 我可以指望职业和性别 row sex occupati
  • 如何根据多个条件创建列?

    我有一个数据框 我想根据多个条件创建一个列 v1 v2 v3 v4 v5 4 1 2 4 5 5 5 2 4 5 6 21 9 20 30 50 6 4 5 7 9 10 3 6 5 9 基本上 使用以下可能的值创建 v6 Cat dog
  • rpart 决策树中的 rel 误差和 x 误差有什么区别? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个来自 UCI 机器学习数据库的纯分类数据框https archive ics uci edu ml datasets Diabet
  • 使用非标准评估公式

    我正在创建一个使用的包非标准评价 http adv r had co nz Computing on the language html跟踪列的含义 该包在函数之间传递数据框 这些函数执行同一组列的各种操作 非标准评估对此非常有用 my s
  • 上传到 Shiny 服务器后在 R 中解压文件

    我正在尝试在我们的本地服务器上使用 Shiny 来构建一个应用程序 允许用户上传包含 ESRI shapefile 和关联文件的 zip 文件 Shiny 服务器的 fileInput 可以获取数据 并且当它这样做时 它会将其存储在临时目录
  • 将动物园转换为数据框

    我转换了一个zoo time series到数据框中R日期成为数据框的索引 有没有办法将日期表示为数据框中的普通列 monthly df lt data frame monthly zoo head monthly zoo head mon
  • 通过消除嵌套的 for 循环来改进此代码

    R 包corrplot除其他内容外 还包含这个漂亮的功能 cor mtest lt function mat conf level 0 95 mat lt as matrix mat n lt ncol mat p mat lt lowCI

随机推荐

  • HTML5 视频标签在 Safari、iPhone 和 iPad 中不起作用

    我正在尝试创建一个 html5 网页 其中有一个像 13s 这样的小视频 我将该视频的 flash 版本转换为 3 种格式 使用 fireFogg 的 ogv 使用 firefogg 的 webm 以及使用 HandBrake 应用程序 h
  • Vue中的页面滑动过渡?

    我正在使用 Vue js 构建一个应用程序 我想为其提供更多类似本机的视图 如何添加页面幻灯片切换 我当前的代码
  • PySide 入门 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我决定学习 Python Gui 开发 由于 PyQt 不是免费的 所以选择了 PySide 但是 与 PyQt 不同 PySide 没有
  • 使用 jQuery mobile 下载文件

    我对 jquery mobile 相当陌生 在尝试链接 jquery mobile 项目中的文件进行下载时遇到错误 我希望用户能够从应用程序下载 zip 文件 但要么出现页面加载错误 要么在新页面中显示未定义 我尝试使用锚标记来链接要下载的
  • f:convertNumber 不会对十进制尾随字母字符引发转换错误

    我在用
  • 无法调用插入的 Javascript 片段

    我正在尝试将 Javascript 片段插入网页 然后使用 blue prism 调用它 这样做的目的是分析搜索返回哪些元素 以确定整个流程中下一步该去哪里 我已经使用 IE 11 开发者控制台在目标网站上测试了 Javascript 代码
  • 在 digitalocean 上安装 PHP 7

    我尝试在 digitalocean 上使用 PHP 7 但文件内的脚本无法运行 这是我用来安装的 sudo apt get install php7 libapache2 mod php7 php7 mcrypt 我可以执行 php ver
  • .NET:无法将对象转换为它实现的接口

    我有一个类 TabControlH60 它既继承自基类 UserControl 又实现了一个接口 IFrameworkClient 我使用 NET Activator 类实例化该对象 使用返回的实例 我可以转换为 UserControl 基
  • signpass 错误:找不到 pass.com.xxx.xxxx 的身份

    我使用Apple 存折演示passbook materials 中的signpass 来创建一个 pkpass 文件 我已创建了我的通行证类型ID 并更改了pass json 中的passTypeIdentity 当我执行时 signaps
  • C语言中如何判断一个进程是否正在运行?

    我想知道某个进程是否正在运行 我不想使用任何系统 命令 是否有任何基于 C 的函数可以让您知道进程是否正在运行 我想提供进程名称并想知道它是否正在运行 Thanks 当然可以 使用kill 2 http man7 org linux man
  • SQLALCHEMY - 迭代数据

    当我使用 SQLALchemy 时 如何迭代列名 Eg Column Name 1 Column Name 2 Column Name 3 etc 第二个问题是我有以下查询 root dbsession query MyTable filt
  • 在 HttpClient 和 WebClient 之间做出决定 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我们的 Web 应用程序在 NET Framework 4 0 中运行 UI 通过 Ajax 调用来调用控制器方法 我们需要使用供应商
  • HTTP 请求标头和缓存

    当请求具有相同的路径但不同的标头时 HTTP 代理应如何决定使用缓存的响应 以此 HTTP 请求 响应为例 GET resource HTTP 1 1 Host example org X Filter foo bar HTTP 1 1 2
  • R 中作为 x 轴标签的图标

    我想绘制这样的东西 摘自本文 http wwwconference org www2008 papers pdf p665 adamic pdf其中图标 在本例中为小图形 用作刻度标签 I get this far where icons
  • 从另一个部分视图更新部分视图 - ASP.NET MVC2

    我希望有两个局部视图 一个用于SEARCH和一个用于SEARCHRESULTS 我要更新SEARCHRESULTS当点击 搜索 按钮时SEARCH部分视图形式 SEARCHRESULTS需要将表单数据从SEARCH局部视图 我不完全确定该怎
  • 注释为 ResponseStatus 的自定义异常的动态消息

    我试图为我的自定义异常提供动态消息 如下面的代码片段所示 ResponseStatus value HttpStatus NOT FOUND reason Entity not found public class EntityNotFou
  • 向包含组件发送操作

    如果我有两个组件 nav menu 导航按钮 and nav menu是一个块组件contain nav button像这样 nav menu Lorem ipsum dolor sit amet consectetur adipisici
  • 无法启动 Kibana 7.5.0 致命错误 未对配置文件进行任何更改

    启动 Kibana 7 5 时出现致命错误 我没有配置任何内容 我只是运行 elasticsearch bat 也是 v7 5 和 kibana bat error root cause type mapper parsing except
  • 使位图在 x 方向可绘制平铺,但在 y 方向拉伸

    我有一个图像用作相对布局的背景 图像需要水平平铺才能形成图案 我可以使用以下代码使图像水平平铺 BitmapDrawable b3 BitmapDrawable getResources getDrawable R drawable bac
  • 在数据框中创建“升序 ID”

    我在 R 中有这些数据 column1 c A B C column2 c AA BB CC DD column3 c AAA na pad lt function x len x 1 len makePaddedDataFrame lt