【问题标题】:Convert dictionary column to multiple columns in R将字典列转换为R中的多列
【发布时间】:2018-07-26 21:35:51
【问题描述】:

我在 R 中有一个数据集,其中包含许多观察结果,其中一列的行如下所示:

[{'name': 'example1', 'parameters': ['par1', 'par2', 'par3'], 'values': ['value1', 'value2', 'value3']}

每个“名称”的“参数”都是相同的。如果我在其他语言中理解正确,这通常被称为字典。现在进行分析,我需要创建 3 个名为“par1”、“par2”和“par3”的新列,每行的值分别为“value1”、“value2”和“value3”。即使“名称”可能不同,但不同的名称却很少,因此我可以对数据集进行子集化以解决此问题。

R 中是否有任何函数或包可以自动执行此操作?

当然,我可以用 substring 或类似的东西做一些事情,但这将是相当多的工作。

【问题讨论】:

    标签: r dictionary dataframe


    【解决方案1】:

    好吧,如果有人看到这个并且也在寻找答案,我通过使用 gsub 删除所有多余的字符以及“名称”、“参数”和“值”字符串来解决这个问题。然后,您可以将 sapply 与 strsplit 结合使用来创建新列,例如剩余字符串列中的第 7 个值。对所有变量执行此操作,您将获得一个数据集。比你想要的多一点,但它确实有效。

    【讨论】:

      猜你喜欢
      • 2019-04-14
      • 1970-01-01
      • 1970-01-01
      • 2017-12-26
      • 2016-02-04
      • 2019-07-29
      • 1970-01-01
      相关资源
      最近更新 更多