问题标签 [rowwise]

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 投票
1 回答
58 浏览

r - 使用R、dplyr和rowwise时如何定义一个变量来记录处理的行数?

我有一个需要很长时间才能运行的功能。所以,我想知道我的数据框有多少行被处理了。通常,我们可以在 for 循环中定义一个变量来轻松处理这个问题。但我不知道如何在 dplyr 中做到这一点。

假设代码是:

我希望在代码的某个地方,我可以定义一个变量 i。每次处理一行时,该值将加 1,然后在控制台中打印其值,如:

0 投票
0 回答
243 浏览

r - 使用 rowwise() 对 R 中的数据帧中的列进行逐行操作有什么好的替代方法?

我正在尝试对数据框中的一列执行字符串操作Test_df。这个数据框有近 500 万条记录。目标是计算字符串中字符的出现次数(在替换空值之后),我正在使用str_locate计数。

由于这是一个逐行突变,我尝试使用rowwise()带有dplyr.

这条线的执行时间超过了 5 个小时,这是非常次优的。

然后,我尝试根据这个purrr:pmapStack Overflow Thread 使用该函数稍微加快进程,但这无助于加快进程。

有没有办法让执行replace_na更快str_locate?我需要每月执行一次。

0 投票
1 回答
86 浏览

r - mutate_at 仅满足特定条件的变量

我有以下数据框:

我想创建一个列的平均值大于 0的所有其他列(每次不同的集合。

我尝试了以下方法:

我究竟做错了什么?

最后一列的输出应该是 3、1.5、2.5 等。

0 投票
1 回答
43 浏览

r - 如何对单行数据框应用排序和过滤

我有一个只有一行的特殊数据框。我想按升序对其进行排序并过滤掉小于临界值的列。这是一个例子:

这是数据框的样子,这是我从其他代码中得到的。

假设临界值为 2.5,那么预期输出为:

谢谢你的帮助!

0 投票
1 回答
138 浏览

r - 如何在 `mutate_at` 中应用一个函数,以按行对其他列中的值进行条件?

我有一个数据框,我想在其中转换一组列的值,条件是同一行中另一组列中的值。我正在尝试使用 和 的组合来做到这一点,但未能做到这tidyverse一点。这是一个可重现的示例。rowwisemutate_at

在该表中,我想转换所有以 开头的列的"sim_"值,条件是cat1和的值cat2。比如说,我想用 替换所有"sim_*"列中的值NA,但只在cat1 == cat2. 所以我的预期结果是:

我尝试了一些关于rowwiseplus主题的变体,但mutate_at没有运气。例如:

我错过了什么?我意识到,如果我首先将数据从宽到长重塑,这会更容易,但我希望学习一些有关tidyverse函数或语法的知识,并找到一种方法来做到这一点,而无需重塑数据。

0 投票
5 回答
44 浏览

r - 如何在数据帧上按行应用函数以在 r 中生成新的或扩展的数据帧

我正在尝试扩展现有数据集,目前看起来像这样:

tr 是每个站点/年份组合的重复总数。我只想添加复制,然后添加每个复制的响应变量。对于使用以下功能的单个站点/年份组合来说,这很容易:

该函数如何应用于输入数据帧的每一行以生成最终数据帧?base r 中的应用函数之一或 purrr 包中的 pmap_df() 似乎很理想,但由于不熟悉这些函数的工作原理,我所有的努力都只会产生错误。

0 投票
1 回答
111 浏览

r - R:一个数据的行数总和,基于另一数据的行特定动态条件

考虑以下数据:

在 Data1 中,我想添加一个名为“结果”的列。“结果”(对于 Data1 的每一行)应该是满足四个条件的 Data2 的行数的总和(1)Data2$Name2 应该匹配 Data1$Name1 的行条目,(2)Data2$Country2 应该匹配行的条目Data1$Country1,(3) Data2$Quality2 应该是“好”,(4) Data2$Date2 应该小于 Data1$Date1 的行条目。因此,Data1$Result 应该是 1、2、0、1 和 1。

例如,对于第一行,Data1$Result 应该为 1,因为 Data2 只有 1 行满足这些条件: sum(Data2$Name2==as.character(Data1$Name1)[1] & Data2$Country2==as.character(Data1$Country1)[1] & Data2$Quality2=="good" & Data2$Date2 < Data1$Date1[1])

或者,换句话说

sum(Data2$Name2=="B" & Data2$Country2=="Brazil" & Data2$Quality2=="good" & Data2$Date2 < "2001-01-21")

同样,对于第二行,Data1$Result 应该是 2,因为 Data2 有 2 行满足这些条件:sum(Data2$Name2==as.character(Data1$Name1)[2] & Data2$Country2==as.character(Data1$Country1)[2] & Data2$Quality2=="good" & Data2$Date2 < Data1$Date1[2])

或者,

sum(Data2$Name2=="C" & Data2$Country2=="India" & Data2$Quality2=="good" & Data2$Date2 < "2002-04-13").

对于第三行,Data1$Result 应该为 0,因为 Data2 没有任何满足这些条件的行: sum(Data2$Name2==as.character(Data1$Name1)[3] & Data2$Country2==as.character(Data1$Country1)[3] & Data2$Quality2=="good" & Data2$Date2 < Data1$Date1[3])

或者,

sum(Data2$Name2=="A" & Data2$Country2=="China" & Data2$Quality2=="good" & Data2$Date2 < "2003-06-19").

第 4 行和第 5 行也是如此:

作为 R 的初学者,我编写了以下代码:

但是,它不会返回所需的结果。我想根据 Data1 的行数编写一个动态代码。在我的实际数据中,我在每个数据中都有大约 100,000 个观察值。

理想情况下,我正在寻找 R 根据 Data1 “n” 的行数读取的一些代码。

例如,对于第一行,R 应该执行

对于第二行,

对于(假设)第 54,342 行

对于第 n 行

另外,我想在 Data1 中添加另一列,名称为“Min.Date.Result”,它给出了满足相同四个条件的 Data2$Date2 的最小(最旧)值。所以 Data1$Min.Date.Result 应该是“1999-03-13”、“1996-09-13”、“NA”、“2005-03-22”、“2003-06-19”。

0 投票
0 回答
31 浏览

r - 有没有更快的方法来对每行内的列中的数据进行排序 - R

假设我有以下数据

使用如下有序数据创建 3 个新列的最快方法是什么?

我有成千上万行这样的数据。

0 投票
2 回答
258 浏览

pandas - pandas:计算分类列的行最大值

我有一个包含 2 列有序分类数据(相同类别)的 DataFrame。我想构建另一列,其中包含前 2 列的分类最大值。我设置了以下。

尽管 np.nan 项有问题,但可以比较列,如运行以下代码所示。

该手册建议 max() 适用于分类数据,因此我尝试按如下方式定义我的新列。

这会产生一列 NaN。为什么?

0 投票
1 回答
98 浏览

python - 逐行比较两个大小不等但维度相同的数组。(Python)

我有两个大小为 (m,2) 和 (n,2) 的数组 A 和 B。A 和 B 将非零元素的索引存储在两个不同的矩阵 P 和 Q 中。

我想找到匹配的索引,所以我可以找到哪些索引存储非零值。