r - 根据列中的(二分法)值拆分数据框
问题描述
我正在使用一个大型数据框,其中包含“性别”作为列之一。它看起来像这样
OriginalDF
SEX X1 X2 X3 X4
0 15 91 12 25
1 12 92 32 35
1 14 94 12 45
0 12 91 42 15
0 11 95 12 25
我希望能够根据二进制性别变量将其转换为两个单独的数据帧;
DF1
SEX X1 X2 X3 X4
0 15 91 12 25
0 12 91 42 15
0 11 95 12 25
DF2
SEX X1 X2 X3 X4
1 12 92 32 35
1 14 94 12 45
我怎样才能有效地做到这一点?
提前致谢!
解决方案
# Using data frames
DF1 <- OriginalDF[OriginalDF$SEX == 0, ]
DF2 <- OriginalDF[OriginalDF$SEX == 1, ]
# If it's very large, I recommend you data.table
library(data.table)
OriginalDT <- data.table(OriginalDF)
DT1 <- OriginalDT[SEX == 0]
DT2 <- OriginalDT[SEX == 1]
推荐阅读
- javascript - 如何定义一个变量并在 jsviews 模板上使用它?
- c# - 如何将 Kitware VTK dll 从 ActiViz 导入 Unity?
- angular - Angular-Calendar:没有 DateAdapter 的提供者
- sql-server - 为什么 SSIS vb 脚本在 VS 中执行而不是从 SQL Server 执行时正确检测文件存在
- r - 警告:if 中的错误:参数长度为零
- javascript - Http 状态未在 try 和 catch javascript 上触发
- ansible - 在 ansible playbook 中使用主机变量
- python - DataFrame 对象中的 corr 函数是否返回大小为 190X190 的受限矩阵?
- c# - 我想得到一个大字符串的特定部分
- maven - 仅通过配置 maven 设置 xml 进行声纳分析