问题标签 [reshape2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1914 浏览

r - R中的段错误使用reshape2包和dcast

dcast当我尝试使用(来自reshape2包)重塑特定数据框时,RStudio 崩溃了。我发现崩溃实际上是在 R 本身中发生的,所以我在 R.app 中运行了我的强制转换代码,并得到了为该站点命名的错误类型:Error: segfault from C stack overflow. 在 Google 和 SO 的帮助下,我了解到这是一个内存访问错误。

好吧,我已经走了这么远,但我不知道从这里去哪里。我无法提供一个真正可重现的示例,因为我的数据框大约有 558,000 行,并且在小型玩具示例上不会出现问题。例如,即使我采用 50,000 行的数据子集,dcast也可以正常工作。是否存在导致问题的特定数据行?如果是这样,任何人都可以建议寻找哪些功能可能导致我遇到的错误类型?

这是我从中转换的数据框的一个子集(一些变量的假值),然后是我正在使用的转换函数。我还在dput下面的函数中包含了这个小数据片段,以防万一使用它会有所帮助。真实数据集大约有 700 个值prog、15 个 值prog1和 5 个 值fa.type

fa.wide = dcast(id + term + yr + nslds + acad.lev ~ prog1 + fa.type , data=fa, value.var="amount", fun.aggregate=sum)

0 投票
2 回答
610 浏览

r - ddply - 对象中包含的变量名中的空格

有没有办法将命名变量和包含带空格的变量名的对象都传递给ddply?这是我的意思的一个例子:

0 投票
1 回答
232 浏览

r - which.min 在 reshape2 的 dcast() 中?

我想提取与每个建筑月组合中 var1 的最小值相对应的 var2 的值。这是我的(假)数据集:

可重现的代码:

这会为每个建筑月组合提取 var1 的最小值......

但是,我想要的是一个与 d1 完全相同的数据框,它显示 var2 的值,该值对应于拉取的最小值var1(如上所示d1)。我的直觉告诉我它应该是 的变体which.min(),但还没有让它与dcast()or一起使用ddply()。任何帮助表示赞赏!

0 投票
2 回答
371 浏览

r - R - 将宽数据改造成长数据后文件大小显着增加

我有一个中等大小的数据库(约 400,000 行,27 列),我需要使用相同的比较标准搜索大部分列(其中 25 列)。我认为将数据重塑/融合为“长”格式会更有效,因此我使用了 reshape2 包来生成 ~9,000,000 行/4 列数据集。除了花费很长时间(我只有 2GB 的 RAM)之外,重新调整后的文件大小非常巨大:500MB。

是否有更有效/计算量更少的方法:

  1. 重塑和存储从宽到长的数据?
  2. 完全避免重塑并仍然使用相同的搜索条件搜索多个列?
0 投票
2 回答
401 浏览

r - 与时间融为一体

我正在尝试使用 chron 类融化数据框

我可以欺骗as.numeric()如下:

但它可以更简单吗?(我想保留 chron 类)

0 投票
4 回答
2676 浏览

r - 将宽格式重塑为多列长格式

我想重塑一个具有多个测试的宽格式数据集,这些测试在 3 个时间点进行测量:

进入一个按列分隔测试但将测量时间转换为长格式的数据集,对于每个新列,如下所示:

我没有成功尝试使用重塑和融化。现有帖子地址转换为单列结果。

0 投票
1 回答
195 浏览

r - 转置数据框

我有一个关于将数据框重新塑造(如果这是正确的话)到它的转置版本的问题。我想采取类似的东西:

并将其转换为如下数据框:

R 中是否有一些我不知道的首选功能,或者我应该循环这个过程?谢谢!

0 投票
1 回答
922 浏览

r - 如何从矩阵列表创建汇总表?

数据:

情况: 我有一个如上所述的矩阵列表。我在列表中有不同大小的矩阵,例如(3x3、2x2 等)。除了命名和排序之外,每个列表和每个矩阵都非常相似。我有 k=2(上面的 k1 和 k2)列表,我试图在汇总表中合并在一起。

目标: 从每个列表中检索数据和名称,然后合并以创建汇总表。

可能的解决方案: a)由于矩阵的大小不同,因此将每个列表中的每个矩阵从正方形重新整形到列是最有意义的。Melt.list() 是一个不错的选择。b) 更改矩阵中行和列的名称。由于在3280对象的名称中,它不需要在矩阵行/列的名称中。因此,行和列可以提供可以成功融合的唯一 ID。

问题:

a) Melt(或 melt.list)截断我的变量名。这让我很不高兴(下面的 X1 和 X2 应该是 7-8 位数)。

b)我可以更改矩阵的列名,但我不知道如何为数组中的多个矩阵执行此操作。当我尝试这个时,我得到一个名称列表(没有更多的值!)而不是更新名称。

问题:我怎样才能:a)防止melt截断我的名字或b)更改矩阵列表上的dimnames?

列表、名称、框架、分层:有多少种方法可以修复我的数据?

搜索: reshape2 文档、plyr 文档、[r] 重命名矩阵列; 列重命名更改行名和列名如何重塑数据框,以及许多其他

提前致谢。

0 投票
1 回答
838 浏览

r - 将熔化的数据帧重建回原始数据的更简单方法

我如何重新创建一个data.frame我融化的reshape2

可重现的例子

我试过的dcast

临时解决方案

我错过了什么?这很明显,但我无法弄清楚答案。我什至可能以前在这里为其他人回答过。啊。

0 投票
3 回答
119 浏览

r - R重塑到可比长

我有一个矩阵 x

和两个投票者

我想要得到的是以下

这是一个情节,我想要两种资产的每一种组合。不幸的是,我无法更改此表单的任何内容。

我试图用 reshape 包得到这个结果,但我无法解决这个问题。

这里还有一段获取初始矩阵的代码:

谢谢您的帮助!