r - 将 T/F 的向量添加到 R 中的向量列表中
问题描述
我有一个名为X
,的 2 个向量的列表Y
。我想为H
这两个向量中的每一个添加一个新元素,该元素将显示为H = TRUE or FALSE
.
但是,而不是显示TRUE
或FALSE
我的输出显示1
and 0
。如何在当前输出中显示TRUE
和?FALSE
H = c(T, F) # The element to be added
L <- list(X = c(K = 22, M = 39), Y = c(K = 54, M = 65)) # List to add to
Map(c, L, H = H) # My current solution
# Current OUTPUT:
# $X
# K M H
# 22 39 1 # instead of `TRUE`
# $Y
# K M H
# 54 65 0 # instead of `FALSE`
解决方案
你有这个问题是因为列表的每个元素都是一个向量,而一个向量是相同类型元素的集合。所以使用向量是不可能得到你想要的,布尔值总是会被转换为数字,因为这是已经存在的向量的类型。
但是您可以在列表中使用列表
L <- list(X = list(K = 22, M = 39), Y = list(K = 54, M = 65))
Map(c, L, H = H)
推荐阅读
- node.js - 使用 http post 流式传输二进制文件
- c++ - 类数组正在破坏数据
- javascript - 如何在 ReactJS 应用程序中使用多个图像?
- c++ - Atom gpp-compiler 给出“'C:\Users\adminUser' 不被识别为内部或...”错误
- sql-server - 如何在 SQL Server 中使用外键
- r - 如果值出现在其他数据框的列中,则创建新列
- javascript - 为什么我的 JS 脚本只在我的第一个 html 对象实例上运行
- java - 自定义表情符号反应?JDA
- c - 为什么使用 char** 会导致 char* 工作的段错误?
- html - HTML/CSS 宽度/高度不会改变?