r - R 代码:如何从小标题列表中提取一列并将其用作函数的参数?
问题描述
我有一个名为 CCLF_Details 的 9 个小标题列表。每个 Tibble 被命名为 CCLF1_Details-CCLF9_Details。我在每个小标题中都有列“COLUMN_LABEL”和“COLUMN_WIDTH”。我想将这些列用作 read_fwf 的参数。
到目前为止我已经完成了
width <- lapply(CCLF_details, "[","COLUMN_WIDTH", drop = FALSE)
label <- lapply(CCLF_details, "[","COLUMN_WIDTH", drop = FALSE)
但是当我通过 read_fwf 运行它时,我得到了
“fwf_widths(width) 中的错误:(list) 对象不能被强制输入‘double’”
在检查“宽度”时,它声明它是一个包含一列(并且该列是数字)的小标题列表,而不是数字向量列表。
如何以可以将列表作为 Map 函数的参数运行的格式获取列?
解决方案
是一个简单的修复。需要使用 sapply 代替
width <- sapply(CCLF_details, "[","COLUMN_WIDTH", drop = FALSE)
label <- sapply(CCLF_details, "[","COLUMN_WIDTH", drop = FALSE)
然后可以使用它作为 read_fwf 的参数
fwf_widths(widths = as.vector(width), col_names = as.vector(label))
推荐阅读
- excel - 根据 1 个单元格值 (VBA) 更新多个工作簿
- javascript - Google Recaptcha 启用禁用的提交按钮
- r - 为什么这个 geom_polygon 只包含整数而不包含小数?
- konvajs - 绘制一个更高更瘦的 Konva.js 六边形
- python - 为什么 strftime("%x") 在我的 python 代码中不起作用?
- python - pyspark 分组映射 IllegalArgumentException 错误
- swift - 如何在 WKWebView 中获取 cookie 和站点数据
- delphi - CreateVirtualDisk 给出错误 87(参数不正确。)
- node.js - 使用 simple-peer 直播网络摄像头视频。Node.js
- java - 更改以编程方式生成的 TextInputLayout 的下划线颜色