r - 基于有错误的索引列创建新列
问题描述
我指的是上一个问题:- 基于索引列创建新列
我尝试了几次转换以转换为 tibble,但仍然遇到以下错误:
> Can't use matrix or array for column indexing
需要根据 SecondLast 中的 colnumber 创建 NewCol
这里的样本数据: -
structure(list(L1;L2;L3;L4;L5;L6;L7;L8;L9;L10;SecondLast;NewCol = c("10001;1;NA;NA;NA;NA;NA;NA;NA;NA;1;10001",
"10005;1;NA;NA;NA;NA;NA;NA;NA;NA;1;10005", "10006;10001;1;NA;NA;NA;NA;NA;NA;NA;2;10001",
"10007;10003;1;NA;NA;NA;NA;NA;NA;NA;2;10003", "10008;1;NA;NA;NA;NA;NA;NA;NA;NA;1;10008",
"10009;10004;1;NA;NA;NA;NA;NA;NA;NA;2;10009", "10021;10005;1;NA;NA;NA;NA;NA;NA;NA;2;10005",
"10022;1;NA;NA;NA;NA;NA;NA;NA;NA;1;10022", "10023;10055;10182;10201;10164;10088;10049;10027;10022;1;9;10022",
"10024;10004;1;NA;NA;NA;NA;NA;NA;NA;2;10004", "10025;10055;10182;10201;10164;10088;10049;10027;10022;1;9;10022",
"10030;10010;10003;1;NA;NA;NA;NA;NA;NA;3;10003", "10031;10043;10056;10020;10003;1;NA;NA;NA;NA;5;10003"
)), row.names = c(NA, -13L), class = c("tbl_df", "tbl", "data.frame"
), spec = structure(list(cols = list(`L1;L2;L3;L4;L5;L6;L7;L8;L9;L10;SecondLast;NewCol` = structure(list(), class = c("collector_character",
"collector"))), default = structure(list(), class = c("collector_guess",
"collector"))), class = "col_spec"))
这是我使用的代码:
df$Leader <- df [1:30][cbind(seq_len(nrow(df)), df$SecondLast)]
如何将数据类型转换为正确的类?
解决方案
我终于明白了......
我的第一堂课table
是
"tbl_df" "tbl" "data.frame"
我做了一个as.data.frame
转换
"data.frame"
多谢你们
推荐阅读
- python-3.x - Networkx 2.2:degree_assortativity_coefficient 与权重
- sql-server - SAS 连接到 SQL Server 并返回参数
- authentication - WEP:共享密钥认证的响应计算
- jquery - 加载页面时如何添加 JQPlot 类以隐藏所有图表线?
- extjs - ExtJS - xtype 'breadcrumb':更改选择框和面包屑文本列表中的项目和样式
- webpack - 如何使用“mini-css-extract-plugin”指定输出目录?
- php - Silverstripe 过滤器关系 AND 而不是 OR
- c# - 删除文件夹 C# .net Core
- android - firebase / glide 创建图像的引用并显示它
- python - 我想从包含 * 的值中删除 * 最后说 20*, 30* 从列中