r - 如何在 r 的数据框列中替换非浮点类原子?
问题描述
我在数据框中逐列得到了 Q 替换原子。例如
A_col B_col
1 "Hi" 0.3
2 -0.5 0.7
3 "HiHi" FALSE
在上表中,A_column 中有两个字符类原子。所以它不是浮动的!我想摆脱那两个Hi
和HiHi
。或者,替换为NA
。而且,在 B_column 中,有布尔类原子 ( FALSE
)。我希望在本专栏中仍然保留布尔类。
所以重点是,我怎样才能摆脱列中的原子类类型。
解决方案
一data.frame
列不能有多个类(即布尔值+数字)。相反,我们可以转换为numeric
with as.numeric
。非数字将转换为,NA
而布尔值FALSE
将强制为 0。
df1[] <- lapply(df1, function(x) as.numeric(replace(x, x %in% FALSE, 0)))
数据
df1 <- structure(list(A_col = c("Hi", "-0.5", "HiHi"), B_col = c("0.3",
"0.7", "FALSE")), class = "data.frame", row.names = c("1", "2",
"3"))
推荐阅读
- node.js - Git, Heroku, node Js [remote denied] master -> master (pre-receive hook denied)
- mysql - 优化具有数百万行的大型 SELECT/JOIN 查询
- c++ - 在多个进程之间共享单个 boost C++ 语言环境对象
- reactjs - ER:无效的挂钩调用。钩子只能在函数组件的主体内部调用。这可能由于以下原因之一而发生:
- mysql - MySQL工作台没有从csv导入所有行
- android - Firebase 获取字符串值总是返回 Null
- express - 元标记只能到达字符串的第一个单词
- arrays - React Typescript:api数据到数组映射
- postgresql - 如何同时使用“onConflict”和“级联更新”插入数据
- python - 基于 Python 的用户输入在表中添加或减去列/行