问题标签 [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.
r - 使用R、dplyr和rowwise时如何定义一个变量来记录处理的行数?
我有一个需要很长时间才能运行的功能。所以,我想知道我的数据框有多少行被处理了。通常,我们可以在 for 循环中定义一个变量来轻松处理这个问题。但我不知道如何在 dplyr 中做到这一点。
假设代码是:
我希望在代码的某个地方,我可以定义一个变量 i。每次处理一行时,该值将加 1,然后在控制台中打印其值,如:
r - 使用 rowwise() 对 R 中的数据帧中的列进行逐行操作有什么好的替代方法?
我正在尝试对数据框中的一列执行字符串操作Test_df
。这个数据框有近 500 万条记录。目标是计算字符串中字符的出现次数(在替换空值之后),我正在使用str_locate
计数。
由于这是一个逐行突变,我尝试使用rowwise()
带有dplyr
.
这条线的执行时间超过了 5 个小时,这是非常次优的。
然后,我尝试根据这个purrr:pmap
Stack Overflow Thread 使用该函数稍微加快进程,但这无助于加快进程。
有没有办法让执行replace_na
更快str_locate
?我需要每月执行一次。
r - mutate_at 仅满足特定条件的变量
我有以下数据框:
我想创建一个列的平均值大于 0的所有其他列(每次不同的集合。
我尝试了以下方法:
我究竟做错了什么?
最后一列的输出应该是 3、1.5、2.5 等。
r - 如何对单行数据框应用排序和过滤
我有一个只有一行的特殊数据框。我想按升序对其进行排序并过滤掉小于临界值的列。这是一个例子:
这是数据框的样子,这是我从其他代码中得到的。
假设临界值为 2.5,那么预期输出为:
谢谢你的帮助!
r - 如何在 `mutate_at` 中应用一个函数,以按行对其他列中的值进行条件?
我有一个数据框,我想在其中转换一组列的值,条件是同一行中另一组列中的值。我正在尝试使用 和 的组合来做到这一点,但未能做到这tidyverse
一点。这是一个可重现的示例。rowwise
mutate_at
在该表中,我想转换所有以 开头的列的"sim_"
值,条件是cat1
和的值cat2
。比如说,我想用 替换所有"sim_*"
列中的值NA
,但只在cat1 == cat2
. 所以我的预期结果是:
我尝试了一些关于rowwise
plus主题的变体,但mutate_at
没有运气。例如:
我错过了什么?我意识到,如果我首先将数据从宽到长重塑,这会更容易,但我希望学习一些有关tidyverse
函数或语法的知识,并找到一种方法来做到这一点,而无需重塑数据。
r - 如何在数据帧上按行应用函数以在 r 中生成新的或扩展的数据帧
我正在尝试扩展现有数据集,目前看起来像这样:
tr 是每个站点/年份组合的重复总数。我只想添加复制,然后添加每个复制的响应变量。对于使用以下功能的单个站点/年份组合来说,这很容易:
该函数如何应用于输入数据帧的每一行以生成最终数据帧?base r 中的应用函数之一或 purrr 包中的 pmap_df() 似乎很理想,但由于不熟悉这些函数的工作原理,我所有的努力都只会产生错误。
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”。
r - 有没有更快的方法来对每行内的列中的数据进行排序 - R
假设我有以下数据
使用如下有序数据创建 3 个新列的最快方法是什么?
我有成千上万行这样的数据。
pandas - pandas:计算分类列的行最大值
我有一个包含 2 列有序分类数据(相同类别)的 DataFrame。我想构建另一列,其中包含前 2 列的分类最大值。我设置了以下。
尽管 np.nan 项有问题,但可以比较列,如运行以下代码所示。
该手册建议 max() 适用于分类数据,因此我尝试按如下方式定义我的新列。
这会产生一列 NaN。为什么?
python - 逐行比较两个大小不等但维度相同的数组。(Python)
我有两个大小为 (m,2) 和 (n,2) 的数组 A 和 B。A 和 B 将非零元素的索引存储在两个不同的矩阵 P 和 Q 中。
我想找到匹配的索引,所以我可以找到哪些索引存储非零值。