问题标签 [purrr]
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 - 在函数中使用 Dplyr 和 Tidyr 将数据框列中的名字和姓氏大写
我希望创建一个函数,将上面简单示例数据框中的名字和姓氏大写,以便名称读取为“Susan Altop”、“Brent Spiner”......等。(请注意,我还删除了逗号。)
我可以使用以下代码单独或使用管道来完成此操作。但我希望创建一个函数,因为我必须多次执行此操作,但我不确定在使用 dplyr、tidyr 等时如何执行此操作。我也愿意接受更多使用列表的创造性建议和咕噜声,如果可能的话。
html - 从R中的列表中提取具有一些缺失值的href
我热衷于将一组 jekyll 主题的源和演示 url 提取到 data.frame 中
所以我想要一个包含 3 列的 data.frame(df),例如
我能够将所有hrefs提取为向量,但是,如您所见,从[13]中,某些站点没有演示,因此我遇到了困难
有没有一种简单的方法可以从数据创建 df?可能使用 purrr 库
r - 整齐的一步预测
我有大约 100 天的半小时观察时间序列,如下所示:
我想对这个时间序列进行滚动预测——根据前 n 天的数据估计模型,然后预测第 n+1 天。使用 for 循环很容易,但我想我会尝试以整洁的方式来做这件事。所以我想创建一个data_frame
结束日期作为第一列的数据帧和一个包含从 df 到第二个结束日期的所有数据的 data_frame,然后我可以迭代使用purrr::map()
和朋友。如何创建这个嵌套的 data_frame?
r - 从列/列表中过滤尝试错误对象(dplyr,但也更通用)
我正在处理我在数据框中收集的一些数据,我想在其中将函数应用于列的所有元素。通常我用purrr::map()
这个。但是,如果函数为列的元素之一返回错误,有时这将不起作用:
所以我可以用 包装我的函数f
,try()
并获得一列结果:
现在,我理想情况下想用它filter()
来过滤掉有错误的行,但我似乎无法做到这一点。这些都不会产生只有第一行的数据框:
我正在考虑的一个肮脏的技巧是try_catch()
改用它,并使其返回与f()
错误情况相同类型的对象,例如-99999
此处,然后将其过滤掉,但我正在寻找更清洁的解决方案。
r - Purrr-Fection:寻找利用 Purrr 的条件数据帧操作的优雅解决方案
的背景
我有一个问题,可能有多种解决方案,但我相信有一个尚未发现的优雅解决方案利用 purrr。
示例代码
我有一个如下的大数据框,为此我在下面提供了一个示例:
挑战
我想对lon
和lat
列当前所在的所有位置进行地理标记NA
。有很多方法可以解决这个问题,其中一种如下所示:
问题
虽然我可以使上述工作,甚至将新识别的坐标lon
和lat
坐标重新放入原始数据框中,但整个方案感觉很脏。我相信有一种优雅的方法可以利用管道和 purrr 来遍历数据框,并根据 和 的缺失有条件地对位置进行地理lon
标记lat
。
我遇到了许多兔子洞,包括在构建完整地址(以及和)purrr::pmap
时尝试并行遍历多个列。尽管如此,我在构建任何可以称为优雅解决方案的东西方面都做得不够好。rowwise()
by_row()
提供的任何见解将不胜感激。
r - 咕噜咕噜-关于安排日期列
我正在尝试使用 purrr 安排一个列表列。但是仅仅创建一个玩具示例就让我完全糊涂了:
我以为我可以做这样的事情:
但是,这不起作用。我在这里想念什么?
现在,我想按升序排列列表列中的日期并提取第一个和最后一个日期。我该怎么做呢?我尝试了不同的变化
但显然我在这里遗漏了一些东西......
我想要的输出是数据框中的新列表列,s
其中列表列中未排列的日期s$e
按升序排列在新的列表列s$new_arranged_dates
中。
编辑 290817:
得到我想要的。但是,我不明白为什么
结果是
r - 使用 dplyr 和 purrr 反复变异变量
我是 R 自学的,这是我的第一个 StackOverflow 问题。如果这是一个明显的问题,我深表歉意;请善待。
我的问题的简短版本
我编写了一个自定义函数来计算变量逐年变化的百分比。我想使用purrr
'smap_at
函数将我的自定义函数应用于变量名向量。我的自定义函数在应用于单个变量时有效,但在我使用链接时失败map_a
我的自定义函数
当我将此函数应用于 mtcars 数据集中的单个变量时,输出与预期的一样(尽管显然结果的含义是无意义的)。
尝试使用 Purrr 将函数应用于字符向量
我认为我在概念化 map_at 如何将参数传递给函数时遇到了麻烦。我可以在网上找到的所有示例片段都将 map_at 与类似的函数一起使用is.character
,不需要额外的参数。这是我尝试使用purrr
.
这给了我这个错误信息
粘贴错误(“d”,col,sep =“”):缺少参数“col”,没有默认值
我认为这是因为 map_at 作为 传递vars
,df
而不是传递参数col
。为了解决这个问题,我尝试了以下方法:
这向我抛出了这个错误:
我玩弄了一堆不同的版本,包括df
从函数中删除参数calculate_delta
,但我没有运气。
其他潜在的解决方案
1) 这个版本使用sapply
, 而不是purrr
. 我已经尝试过以这种方式解决问题并且遇到了类似的问题。如果可能的话,我的目标是找出一种使用 purrr 的方法。根据我对 的理解purrr
,这似乎是一个典型的用例。
2)我显然可以想到如何使用 for 循环来实现这一点,但是出于类似的原因,如果可能的话,我会尽量避免这种情况。
显然我在想这个错误。请帮忙!
编辑 1
为了澄清,我很好奇是否有一种重复转换变量的方法可以完成两件事。
1) 在原始变量中生成新变量,tbl_df
而不替换替换正在变异的列(如使用dplyr
's 时的情况mutate_at
)。
2) 自动生成新的变量标签。
3) 如果可能,通过使用map_at
.
这可能是不可能的,但我觉得应该有一种优雅的方式来完成我所描述的。
r - 访问 R 中的嵌套列表
我为一些数据创建了一个双嵌套结构。如何访问第 2 级的数据(或就此而言第 n 级?)
我现在如何将中国的数据从 nest_2 中获取到数据框或 tibble 中?
我可以得到整个亚洲的数据,但我无法孤立中国。
我以为我可以做到
但我收到以下错误
所以我最大的错误是没有认识到产品是一个列表,可以通过在最后添加 [[1]] 来纠正。但是,我非常喜欢@Floo0 的解决方案。我冒昧地提供了一个函数来获取变量的名称,以防列的顺序与提供的不同。