当前位置: 首页 > 面试题库 >

从data.frame拆分值并创建其他行以存储其组件

蒋寒
2023-03-14
问题内容

在R中,我有一个名为 df 的数据帧,如下所示:

听听听听 听听听听 Ç 听听听听 d
A1听听听听B1听听听听C1听听听听2.5
A2听听听听B2听听听听C2听听听听3.5
A3听听b3 c3 5-7
a4 b4 c4 2.5

我想用破折号分隔第三行和 D 列的值,并为第二个值创建另一行,并保留该行的其他值。

所以我想要这个:

听听听听 听听听听 Ç 听听听听 d
A1听听听听B1听听听听C1听听听听2.5
A2听听听听B2听听听听C2听听听听3.5
A3听听b3 c3 5
a3 b3 c3 7
a4 b4 c4 2.5

知道如何实现吗?

理想情况下,我还想创建一个额外的列来指定我拆分的值是最小值还是最大值。

所以这:

听听听听 听听听听 Ç 听听听听 d 听听听听 Ë
A1听听听听B1听听听听C1听听听听2.5
A2听听听听B2听听听听C2听听3.5
a3 b3 c3 5 min
a3 b3 c3 7 max
a4 b4 c4 2.5

谢谢。


问题答案:

一种选择是用于sub将“ min”和“ max”粘贴到-找到的“ D”列中,然后用于cSplit拆分“ D”列。

library(splitstackshape)
df1$D <- sub('(\\d+) - (\\d+)', '\\1,min - \\2,max', df1$D)
res <- cSplit(cSplit(df1, 'D', ' - ', 'long'), 'D', ',')[is.na(D_2), D_2 := '']
setnames(res, 4:5, LETTERS[4:5])
res
#   A  B  C   D   E
#1: a1 b1 c1 2.5    
#2: a2 b2 c2 3.5    
#3: a3 b3 c3 5.0 min
#4: a3 b3 c3 7.0 max
#5: a4 b4 c4 2.5


 类似资料:
  • 我是个新手,在理解组件的生命周期时遇到了一些困难。 我现在有一个导航栏和导航按钮组件,我希望每个导航按钮触发不同的东西。我不想更改页面,我想在同一页面中显示更多组件。 我有我的按钮设置,所以我可以做下面的。 在这种情况下,我是否可以说,在DOM的其他地方创建/显示不同的组件?

  • 我能够使用StringTokenizer正确地拆分,但在令牌形成后无法访问单个元素。尝试使用array.split(),但它没有将值拆分为单独的数组值。请帮帮我。提前谢了。 我的代码

  • 问题内容: 我想创建一个2d numpy数组,其中每个元素都是其索引的元组。 范例(4x5): 我将创建具有以下列表理解的python : 是否有更快的方法可以达到相同的效果,也许使用numpy方法? 问题答案: 这是一个基于初始化的方法- 样品运行- 到目前为止针对网格化和更大尺寸发布的所有方法的运行时测试-

  • 我正在使用Jmeter测试多个微服务。基本思想是在微服务环境中测试断路器。现在,我使用两个线程组,一个主从远程概念。一个线程组创建使用100次迭代和1000个线程,并对前端服务创建负载,前端服务向后端服务发送请求。另一组用100次迭代但只有一个线程探测后端服务。如果我没有错,第二个线程组比第一个线程组完成得更早。有可能同步这两个吗? 也许还有另一个问题。当我用遥控器缩放线程时,第二个线程组也会缩放

  • 我有两个json对象,请不要是字符串,我想将它们组合成一个json对象,如下所示。 两个对象: 预期结果: 有没有一种优雅的方法可以做到这一点?我的意思是,不提取每支笔和每本书的值,然后使用以下方法将它们重新插入包 我正在使用org。科德豪斯。抛弃json。JSONObject,如果需要该信息。

  • 问题内容: 我正在尝试创建一个动态变量并分配给它 但是我这样做有错误,有帮助吗? 问题答案: 您可以使用 bash的声明指令和间接功能, 如下所示: 测试: 更新: 用途: