问题标签 [cbind]

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 回答
4025 浏览

r - 绑定不同数据类型的数据帧

这应该是一个基本问题,可能有重复,但我似乎找不到它们,所以请多多包涵并指出正确的地方。谢谢!

我有一个数据框,其中包含可能存在 NA 和缺失值的整数。我正在计算行平均值(将 NA 设置为零)和列平均值(跳过 NA)。然后我想创建一个数据框(或表),其中包含整数以及行平均值和列平均值。这是一个示例数据框:

这是计算列的函数,即跳过 NA:

这是计算行意味着将 NA 设置为零的函数:

一个问题是 rbind 改变了数据类型,因为整数在标记为“Test.1”的列中转换为浮点数(或看起来是):

在您的回答中,我非常感谢您解释为什么在这种情况下似乎只有第一列受到影响。是否与列中存在 NA 有关?

基于 cbind,我没有观察到其他函数存在同样的问题:

最终我想获得一个看起来像这样的数据框或表:

如果您能以不多的步骤向我展示如何做到这一点,我将不胜感激。我对基本 R 答案以及基于包的答案持开放态度。这些计算将在闪亮的应用程序中在线完成,所以我特别希望看到有效的方法。非常感谢!

0 投票
2 回答
6521 浏览

r - R 编程:组合两个数据帧

伙计们,

如果您将 2 个数据框 df1 和 df2 连接或合并,我想连接或合并。我的目标很简单,就像创建一个新数据框,其列是 df1 和 df2 的并集。

例子

我的愿望是得到如下结果。

我尝试了几个选项:

这将返回一个数据框重复列“product”和“skew”。

这给了我几乎想要的东西,除了它有额外的“产品”和“倾斜”列。它们的后缀是“.1”,所以没有重复。

我认为我在合并时遗漏了一些东西,因为这实际上从所有数据集中创建了一个联合,在提供的 32 个观察值中总共产生了 128 个观察值。我想这就是合并的工作原理。我已经运行了“?合并”并尝试了一些选项,但无法让它吐出我想要的东西。

所以我的问题是:

如上所述从 df1 和 df2 中获取所需数据帧的最佳方法是什么?

提前感谢您的帮助!里亚德。

0 投票
1 回答
103 浏览

r - 在R中的一个列表中组合字段

我在 R 中有一个列表,看起来像 mylist$a、mylist$b、mylist$c、...、mylist$z。有没有一种更简单的方法可以将列表中的所有这些字段组合成一个变量,而不是输入类似的命令cbind(mylist$a,mylist$b,...,mylist$z)

PS 所有子字段具有相同的维度。

0 投票
2 回答
1274 浏览

r - 在基于标准的迭代中将一个值与数据框中的所有值匹配

这是我实际数据集的一小部分。

相同结构的第二个矩阵。

mz2

我需要将 col 1 中的第一个值与所有列中的所有值进行比较,如果它们符合我的标准,我应该在该特定列的第一行中添加值。这将在迭代中发生。然后,我检查 col 1 中的第二行并匹配所有列中的所有值,如果它们符合条件,则将它们添加到特定列的第 2 行。

我尝试使用 for 循环,但它很混乱。

这是我的尝试:

我在我的代码中尝试了什么:我尝试从所有迭代中生成一个逻辑矩阵,并且在为标准检查了 col 2 中的所有行之后,将有一个逻辑矩阵,并且当生成矩阵时,它的大小将是 5x2两种条件。然后,当两个条件都为 TRUE 时,如果我比较 col 1 中的第一个值,我将 col 2 值添加到第 1 行。

我希望很清楚,因为在尝试了所有循环结构之后我很困惑。有没有更简单的方法可以在不使用这么多循环的情况下做到这一点?使用 lappy 或其他一些功能。

输出:不是确切的值,而是给出我期望的输出的想法。

第一个 col 是我在主矩阵中的 col 1 并且计算所有其他列。如果我从所有匹配的行中找到一个值,那么我将它添加到该值所属的行和相应的列中。0 表示在该列的所有行中没有与第 1 列中的该值匹配的值。

0 投票
0 回答
1720 浏览

r - cbind 和 lapply 用于附加动态列

我正在尝试使用 cbind 和 lapply 将列添加到数据框中

为了说明一个问题,我会在没有 lapply 的情况下做

这部分工作几乎没有问题。我在这里唯一需要的是删除第一列,但我相信有更好的方法根本不创建它,这是我不知道的。

但是带有 lapply 的版本不会产生预期的结果:

我尝试了不同的方式,但这不是我在“手动”绑定时得到的

可能我误用了 lapply,请指教

在此先感谢,--Oleg

0 投票
2 回答
660 浏览

r - 如何使用R通过第一行绑定具有不同行数的多个数据集

我正在尝试通过数据集的第一列“TimeStamp”绑定多个股票。其余列是开盘价、最高价、最低价、收盘价、成交量。问题之一是它们都包含不同的行。第二个问题是“时间戳”是数字的,我无法弄清楚如何将其转换为适当的“时间”。我所知道的是,它们都是 1 分钟的间隔,并且每天都给出了范围:

对于我要绑定的所有股票,这些范围都是相同的。

以下是一只股票的例子:

我曾尝试使用cbind来绑定所有股票,但由于它们都包含不同的行,因此发生错误。我曾尝试将每只股票转换为一个 xts对象,但由于我不知道如何分解,所以TIME我无法做到。有什么建议么?提前致谢!

期望的输出:

1387519189 1.3635 1.3635 1.3632 1.3634 16300 1387519189 35.5 35.90 35.4 35.5 100

1387519476 1.3633 1.3636 1.3632 1.3635 200 1387519476 35.6 35.6 35.40 35.5 100

1387519798 1.3635 1.3635 1.3634 1.3634 200 1387519798 35.8 35.95 35.4 35.5 100

0 投票
3 回答
642 浏览

r - 如何合并来自两个不同集合的股票数据?

我有两个数据集,AAPL并且AMZN,我希望两个合并,但发现很难这样做,因为merge cbind没有按照我的意愿去做。我认为问题在于将数据集识别为 data.frames 但不确定。

数据如下所示:

期望的结果:

本质上,我想并排Date合并这两个数据集(我不能在这里做)。我尝试将每个数据集转换为但不确定它是否正确:Time xts

cbind然后,当我使用,merge或什至 时,它无法合并join

0 投票
0 回答
198 浏览

r - 想在 R 中自动化 cbind

我的代码:

按前一个数据帧的第二列排序新数据帧的第一列

按前一个数据帧的第一列排序新数据帧的第一列

根据需要创建单个数据框并绑定它们

我想要做的是当foura抛出错误时,我想做一个函数来粘贴和cbind在foura之前的所有内容(或任何错误),这样我不必总是在运行之前修改代码。

输出:

0 投票
2 回答
185 浏览

r - 重塑数据框 R

我正面临数据框的重塑问题。它有更多的行和列。简化后,它的结构如下所示:

我想提供一个数据框,其中只有一行变量“year”,复制后续列中的 x1、x2、x3 值,并使用行名和 x 变量之间的组合重命名列。它应该如下所示:

我想使用后续的 cbind() 函数,但是由于我必须对数千行和数百列执行此操作,我希望 reshape 包有更直接的方法(我还不太熟悉)

提前致谢!

0 投票
1 回答
62 浏览

r - 有没有一种方法可以使用变量而不需要定义它(在 R 中)?

我使用以下代码:

据我所知,需要定义临时数据(如所有对象、变量……)。因为只有数值,所以我将其定义为tempdata<-0. 这不是一个真正的大问题,但是当之后使用 rbind 时,第一行0保留在第一位,我必须使用某种

我不能将其定义为tempdata<-'',因为这将是一个角色,对吧?

就像我说的那样,对我来说并不是真正的问题,但是否有更好的方法,特别是如果我或某人会rbind()在代码中多次使用,因此可能第一行不仅必须“清除”一次......

使用cbind().

也许有人知道更好的解决方案?