r - 将数据框附加到 R 中的列表
问题描述
我刚开始使用 R 编程,对你说的这方面的知识很少或根本没有。当我尝试将数据框附加到列表时。
我有以下代码:
for(i in 1:NumberOfCoresUse)
{
if(i != NumberOfCoresUse)
{
ListOfData <- list(unlist(ListOfData),RawTrainData[((i-1)*ApproximateRowsPerCore+1):(i*ApproximateRowsPerCore),])
} else
{
ListOfData <- list(unlist(ListOfData),RawTrainData[((i-1)*ApproximateRowsPerCore+1):(MaxRecords),])
}
}
当我尝试以下操作时,数据框已完美添加到列表中:
ListOfData <- list(RawTrainData[((i-1)*ApproximateRowsPerCore+1):(i*ApproximateRowsPerCore),])
或者,也许当我编写以下代码时,2 个数据帧完美地添加到列表中:
ListOfData <- list(RawTrainData[((i-1)*ApproximateRowsPerCore+1):(i*ApproximateRowsPerCore),],RawTrainData[((i+1-1)*ApproximateRowsPerCore+1):((i+1)*ApproximateRowsPerCore),])
解决方案
不需要循环,尝试使用rep
和split
df <- data.frame(1, 1:10, sample(LETTERS[1:3], 10, replace = TRUE))
NumberOfCoresUse <- 3
split(df, sort(rep(1:NumberOfCoresUse, length.out=nrow(df))))
$`1`
X1 X1.10 sample.LETTERS.1.3...10..replace...TRUE.
1 1 1 C
2 1 2 B
3 1 3 A
4 1 4 A
$`2`
X1 X1.10 sample.LETTERS.1.3...10..replace...TRUE.
5 1 5 B
6 1 6 C
7 1 7 A
$`3`
X1 X1.10 sample.LETTERS.1.3...10..replace...TRUE.
8 1 8 C
9 1 9 B
10 1 10 B
?split
“从拆分返回的值是包含组值的向量列表”因此,您将输入数据帧拆分为已定义的部分。
?rep
此处用于定义拆分的分组。
推荐阅读
- chart.js - Chart.JS xAxis 的备用背景颜色
- javascript - 在jquery中连接两个下拉菜单
- nginx - Nginx 502 错误网关 uWSGI
- google-api - 在 compute.googleapis.com/instance/cpu/utilization 的 api 结果中需要帮助
- c# - 将 null 文字或可能的 null 值转换为不可为 null 的类型
- css - 前端开发人员如何将这种设计变为现实
- javascript - 将两个函数合并为一个以简化代码
- java - 无法使用 MapStruct 映射来自 Integer 的枚举
- c++ - C ++从向量中删除对象?
- python - ValueError:数据框必须有列“ds”和“y”分别包含日期和值