用非数值重整R中的数据框

出去-

我有一个带有非数字值的数据框,格式如下:

DF1:

  col1    col2
1  a       b
2  a       c
3  z       y
4  z       x
5  a       d
6  m       n

我需要将其转换为这种格式,

DF2:

  col1    col2    col3    col4
1  a        b       c       d
2  z        y       x       NA
3  m        n       NA      NA

使用col1作为主键(不确定R中的正确术语),其余列包含与该键关联的元素(如DF1所示)。

与DF1相比,DF2将包括更多列,具体取决于与任何键关联的元素数量。

由于与每个键关联的元素数量不同,某些列将没有值,表示为NA(如DF2中所示)。

列名可以是任何东西。

我尝试使用reshape(),melt()+ cast(),甚至是通用的for循环,我都使用cbind并尝试删除该行。

它是包含5000万行的超大型数据集的一部分。我可能必须使用云服务来完成此任务,但这是另一回事。

我是R的新手,所以可能缺少一些明显的解决方案。

任何帮助将非常感激。

-谢谢

阿克伦

如果这是一个大数据集,我们可以使用 data.table

library(data.table)
setDT(DF1)[, i1:=paste0("col", seq_len(.N)+1L), col1]
dcast(DF1, col1~i1, value.var='col2')
#    col1 col2 col3 col4
#1:    a    b    c    d
#2:    m    n   NA   NA
#3:    z    y    x   NA

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在R中的数据框中将数据从行重整为列

来自分类Dev

在R中的数据框中将数据从行重整为列

来自分类Dev

R:过滤掉数据框中的非数值

来自分类Dev

将数字映射到R中具有非数值的数据框

来自分类Dev

识别R中数据框中数值最高的列

来自分类Dev

R中的数据框字段中的2个数值

来自分类Dev

用列名R中的id变量重整形

来自分类Dev

具有数值数据框的逻辑数据框,并用NA用R替代FALSE

来自分类Dev

R:将列表中数据框的因数转换为数值

来自分类Dev

如何从R中的数据框中提取高数值

来自分类Dev

R用下一个非零值替换数据框中的零

来自分类Dev

根据条件数据框R将行重整为列

来自分类Dev

根据条件数据框R将行重整为列

来自分类Dev

R运行关联,忽略非数值数据

来自分类Dev

R 函数值到数据框

来自分类Dev

R,如何只替换数据框的数值?

来自分类Dev

替换熊猫数据框中的数值

来自分类Dev

在 R 中:选择一行中数值的数据框函数中的列

来自分类Dev

来自非数值数据框的均值和标准差

来自分类Dev

在R base中的数据框中按行对数值进行排名

来自分类Dev

用行名替换r中数据框中的值

来自分类Dev

将数据框列表转换为 R 中的数值向量列表

来自分类Dev

有条件地修改 R 数据框中的所有数值?

来自分类Dev

需要帮助计算 R 中数据框中行中非数值的比率

来自分类Dev

有条件地填充缺失值,同时在R中重整长而宽的数据集

来自分类Dev

非数值数据的散点图

来自分类Dev

用R数据框中的条件进行计数

来自分类Dev

R用注释数据框替换列中的单词

来自分类Dev

将数据框重整为平均值的堆栈