r - 从 IC2 函数中提取数字
问题描述
我试图从 calcSConc 函数(包 IC2)中提取一个数字。我可以分两步提取我需要的号码:
#CODE
library(IC2)
library(dplyr)
DATA_REFORM<-rnorm(1000, 3, .25)
DATA_REFORM1<-rnorm(5000, 6, .50)
dn_0<-calcSConc(DATA_REFORM,DATA_REFORM1)
dn_1<-data.frame(dn_0[[1]])
dn_1<-round(dn_1,6)
dn_1
此函数的输出是以下数字:
index parameter
SConc 0.000115 2
所以我的意图是将这个唯一的数字 0.000115 放入数据框中,代码如下:
INEQ_TOTAL_INCOME_OUTPUT<-data.frame(
"Concentration coefficient of taxes with respect to pre-tax"= round(IC2::calcSConc(DATA_REFORM,DATA_REFORM1),6)
check.names = FALSE
)
那么任何人都可以帮助我如何修复此代码并获得结果 0.000115 但进入数据框?
解决方案
如果我们检查str
,它是一个嵌套的list
str(dn_0)
#List of 2
# $ ineq:List of 2
# ..$ index : Named num -0.00054
# .. ..- attr(*, "names")= chr "SConc"
# ..$ parameter: Named num 2
# .. ..- attr(*, "names")= chr "param"
# $ nas :List of 4
# ..$ xNA : num 0
# ..$ yNA : num 0
# ..$ wNA : NULL
# ..$ totalNA: int -4000
[[
因此,我们可以使用or直接提取这些组件$
。在这里,我们可以data.frame
直接对提取的“ineq”分量进行
d1 <- transform(data.frame(IC2::calcSConc(DATA_REFORM,
DATA_REFORM1)$ineq), index = round(index, 6))
并重命名第一列
names(d1)[1] <- "Concentration coefficient of taxes with respect to pre-tax"
d1
# Concentration coefficient of taxes with respect to pre-tax parameter
#SConc -0.00054 2
推荐阅读
- ruby - 如何将范围分解为更小的非重叠范围
- c# - 有一个实现接口的类并实现扩展第一个接口的接口是错误的吗?
- javascript - Graphql 订阅 - 订阅字段必须返回 Async Iterable。收到:使用 withFilter 时未定义
- regex - 谷歌分析正则表达式:过滤登陆页面只有一个目录
- excel - 更改电子邮件中的参考列
- julia - 为什么结构和可变结构具有不同的默认相等运算符?
- javascript - Express API 在 Post 请求中不返回任何内容
- javascript - 如何在当前现有的 javascipt 对象中添加嵌套对象
- assembly - 反汇编中的奇怪函数前导:推送 ecx 但未使用
- reactjs - 使用带有 Auth0 的 Typescript 设置 React 应用程序