问题标签 [reshape]

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 投票
2 回答
242 浏览

r - 在 R 中重塑数据

我想重塑一个数据框,我正在为重塑和堆栈函数的文档而苦苦挣扎。我的数据框是这样的:

最后,我想要一个 2 列数据框(40x2),一列 x 和 y“堆叠”,一列带有相应的 x&y 因子

0 投票
2 回答
7683 浏览

r - 为一列中的值重塑数据

我的 data.frame 看起来像这样

我想得到这样的东西:

它仅在少数情况下与 reshape() 一起使用到宽格式,但对于整个数据框(大约 23.000 个 ID),reshape() 花费的时间太长。Melt() 和 cast() 确实重塑了数据,但将 test_result 中的值替换为测试的频率。任何其他想法如何管理这个?谢谢!

0 投票
2 回答
642 浏览

r - 将变量值重塑为列的最快​​方法

我有一个包含大约 300 万行的数据集和以下结构:

作为 R 的新手,我很难找到将数据重塑为下面概述的结构的正确方法:

我的问题是:创建 data.frame 的最快/最优雅的方法是什么,其中 PrimaryConditionGroup 的值成为列,按 PatientID 和 Year 分组(计算出现次数)?

0 投票
1 回答
670 浏览

r - R长形式的PCA

我想对长格式的数据帧进行 PCA:

时间1 id1 数据11

时间1 id2 数据12

时间2 id1 数据21

等等

有没有一种简单的方法可以做到这一点,或者是标准的方法reshape,然后再做princomp。我的数据集非常大,大约有 40,000 次和 4,000 个 id。

0 投票
5 回答
6091 浏览

r - 熔化R中的下半部分矩阵

如何融化下半三角形加对角矩阵?

到行和列中的data.frame(保持以下顺序)

0 投票
1 回答
4160 浏览

regex - R + reshape:使用带有正则表达式的 colsplit

我正在尝试使用 colsplit 来分解数据框中的向量。我们将正则表达式作为 colsplit 的 arg 的事实使我认为它可以灵活,但我遇到了麻烦(可能只是我不理解 R 中的正则表达式)。

这是问题所在:

让我们创建一个向量...

我想在第一个下划线处将它分成两列。换句话说,我希望我的最终结果是……

我正在尝试在 colspan 中找到正确的正则表达式来做到这一点,但没有运气。这是我能得到的最接近的...

它使用拆分正则表达式作为简单的分隔符,它给了我三列。我不想拆分第二个下划线(更糟糕的是,在我的真实数据中,我有任意数量的下划线,而不仅仅是两个)。

有没有可以用于“拆分”的表达式来给出我想要的?

我曾希望 colsplit 中的正则表达式允许我在组上进行匹配,而组匹配将是拆分的内容,但情况似乎并非如此。

*编辑(感谢@Joshuaulrich)colsplit 在使用较新的 reshape2 时“按预期”工作!!!

0 投票
2 回答
17464 浏览

r - 数据框中行值的箱线图

我得到以下数据框(此处简化):

其中 E1 - E5 是行号。我想为每一行的值创建一个箱线图(甚至更好的小提琴图)。我想忽略列 ID,并将行 ID 作为“因素”。

像这样的最佳答案: 如何生成箱线图

但以 E1 - E5 作为值。正如您可能猜到的那样,我是融化/铸造/重塑的新手。

非常感谢您的帮助

0 投票
2 回答
1382 浏览

r - 尝试在R中创建和循环不平衡数据矩阵

我正在尝试进行分层贝叶斯分析,但在使用 R 和 WinBUGS 代码时遇到了一些问题。我没有平衡的数据,并且正在努力编码。我每天使用 iButtons(温度记录设备)在横断面上收集温度数据,并试图生成一个将其与遥感数据相关联的模型。不幸的是,每个样带都有不同数量的 iButton,因此在样带(j)中创建按钮(i)的 3D 矩阵,在第(t)天重复“采样”对我来说是一个问题。

最终,我的模型将类似于:

级别 1 Temp[ijk] ~ N(theta[ijk], tau) theta[ijk] = b0 + b1*x1 + . . . + bn*xn

级别 2 b0 = a00 + a01*y1 + 。. . an*yn b1 = a10 + a11*y1 ...

3 级(也许?) - 2 级随机拦截

通常我会做这样的事情: Wide <- reshape(Data1, idvar = c("iButton","block"), timevar = "julian", direction = "wide")

然后我可以有一个 3D 矩阵,我可以像这样在 WinBUGS 或 OpenBUGS 中循环:

无论如何,不​​要担心上面代码的细节,它只是作为其他分析的示例。我的主要问题是,当我没有平衡设计且每个样带具有相同数量的 iButton 时,如何进行此类分析?任何帮助将不胜感激。我显然是 R 和 WinBUGS 的新手,以前没有太多的计算机编码经验。

谢谢!

哦,这是长(堆叠)格式的数据:

0 投票
1 回答
1758 浏览

performance - 将矩阵从 3d 重塑为 2d 保持行

我正在将 3d 矩阵转换为 2d 矩阵。这是形状变换:[nxmxo] -> [n*oxm]。

矩阵的元素与行相关。因此,需要在结果矩阵中具有相同的行。

这样做:

没有保留 A 中的行。

所以我这样做:

有没有更有效的方法可能使用重塑?

非常感谢!

0 投票
1 回答
3272 浏览

r - strsplit 一个融合的数据集

我正在尝试绘制以大型 CSV 文件格式出现的基因测试的结果。CSV 中的每个 x,y 位置都是一个数字分数,其中大部分为零。我只对非零数据感兴趣。此外,每个 X 和 Y 标题的名称还有我想用来进一步对数据进行子集化的附加信息。我想做的是融合数据,用零值剥离所有行,然后对融合的数据进行字符串拆分,以提供可用于转换的额外列。但是,当我尝试对熔化的数据进行字符串拆分时遇到了问题。以下是命令和一些示例数据:

这导致以下数据:

头(小熔体)

但是,当我尝试在 $variable 列上进行字符串拆分时会给出以下结果:

关于为什么的任何想法?或者如何解决这个问题?

谢谢扎克cp