问题标签 [lapply]
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 - 如何在列表中应用到列表的子元素
假设我有一个嵌套在列表中的列表,并且我有一些仅适用于向量的函数(例如 stringr 包中的 str_replace )。该功能应该对实际需要信息的每个元素进行工作,...
问题1:我的问题有具体的解决方案吗?
问题2:有没有通用的解决方案?
应该有一个使用循环的解决方案,但这几乎是优雅的并且可能非常缓慢 - 效率确实在这里发挥了作用。
让我们举个例子:
r - 如何将 attr<- 与 lapply 一起使用?
或者更笼统地说:如何向列表的元素添加多个属性?
我一直试图为列表的元素设置属性,所有这些元素都是data.frames
. 最后,我想为每个内部添加names(myList)
一个可变属性。data.frame
但我什至无法获得所有列表元素的静态属性。
这不起作用,因为lapply
不适用于lapply<-
. 如果我至少知道如何做到这一点,也许我可以弄清楚如何使用列表名称等不同的属性来做到这一点。
r - 加权方差-协方差矩阵和 lapply
我有一个prob
包含 50 个元素的列表。每个元素是一个 601x3 的概率矩阵,其中每一行代表一个完整的样本空间(即,每个矩阵的每一行之和为 1)。例如,这里是 的第一个元素的前五行prob
:
现在,我想做的是为list中每个矩阵/元素的每一行prob
创建以下矩阵。取第一行,设 a = .603、b = .366 和 c = .032(四舍五入到小数点后三位)。然后,
这样:
我想再获得类似的 3x3 矩阵 600 次(对于该矩阵的其余行),然后对 .的其余元素再重复整个过程 49 次prob
。我唯一能想到的就是在apply
内部调用,lapply
以便我一次访问每个矩阵的每一行。我敢肯定这不是一种优雅的方式(更不用说我无法让它工作),但我想不出其他任何东西。谁能帮我解决这个问题?我也很想听听关于使用不同结构的建议(例如,在列表中使用矩阵是否不好?)。
r - 矩阵分配在 lapply 内失败
我有一个带有字符数据的 data.frame,我希望得到一个具有相同列标题但每个值都有计数的矩阵。到目前为止,我可以获得我想要的维度的空矩阵,但是当我尝试填充myMatrix
计数时,它不起作用。
到目前为止,一切都很好。这是不符合我期望的部分:
它返回正确的值,但myMatrix
仍然充满了 NA。奇怪的是,这个有效:
为什么分配myMatrix
失败lapply
,我怎样才能让它工作(没有for
循环)?
r - 将函数应用于矩阵列表
res
是 alist
并且每个元素都是 a MATRIX
。我得到了错误。
r - 如何在 R 中的 lapply 中向函数添加可选参数
我正在使用以下内容:
它已经奏效了,但是我更改了函数 qic 所以它现在有一个参数
我想调整上面的 lapply 函数以在 qic 中包含 TRUE 或 FALSE。这个计算 qicout 的 lapply 函数实际上在另一个函数中,我希望有一个 small = TRUE/FALSE 选项,以便可以将它传递给 lapply 中的 qic 函数。任何建议最好的方法来做到这一点?
r - 使用“应用”系列函数处理 data.frames 列表
我有一个数据框,然后将其拆分为三个(或任意数量)的数据框。
我要做的是自动处理每个数据框中的每一列并添加现有变量的滞后版本。
例如,如果每个 data.frame 中有三个变量(V1、V2、V3),我想自动(没有硬编码)添加 V1.lag、V2.lag 和 V3.lag。
这是我到目前为止所拥有的,但我现在被困住了。
任何帮助都会受到高度赞赏。
最后,我想将三个数据框合并为一个大数据框,其中将包含新创建的变量。
任何帮助将不胜感激。
编辑:在评论部分,我询问了移动平均线而不是滞后。这是解决方案:
r - 在数据框中自动创建派生变量
我有一个包含六个数值变量 V1、V2、V3 和 V1.lag、V2.lag、V3.lag 的数据框。
注意:我的真实数据集有更多变量,但我仅使用 3 进行说明!
我希望能够自动(无需硬编码)运行所有 V 变量(不是滞后变量)并通过将每个 V 变量与对应的滞后变量相除来创建 V1.over.V1.lag 变量。
提前致谢
**编辑:我想出了如何识别“原始”列和“滞后”列**
但我仍然不知道如何将所有原始因素与其滞后因素分开
会给我指数,但我如何将它们与滞后结合成新的因素?
不工作
r - 从 lapply 中提取不同长度的输出
谁能帮我解决这个问题。我lapply
在@Arun提供的以下代码中使用:
现在,out
是 110 个文件的列表。这些输出文件的长度不同,所以我不能使用as.data.frame(do.call(rbind, out))
. 有没有办法以类似循环的方式将每个文件保存为单独的文件,或者我必须手动进行(例如out[1]
,out[2]
等等......)。
r - sapply 使用自定义函数(一系列 if 语句)
我想运行一个查看两个向量的函数,根据两个向量中值的符号返回不同的值。我写了一个函数来比较两个值,但是我想在两个向量上运行它。所以我使用了 sapply,但我得到的结果与预期不同。
以下给出了预期(和期望)的结果:
结果:90、0、270、180
但是,当我尝试进行相同的比较时,但使用带有 sapply 的向量时,我得到了不同的结果:
结果:90、90、180、180。
我看不出有什么问题,所以请帮忙!