如何将对象转换为数据框类对象?

发布于 2025-01-13 15:04:18 字数 809 浏览 2 评论 0原文

df2 df1

我正在尝试在 R 中创建桑基图,但我不断收到错误消息,其中一个参数需要是数据帧类对象。参见下文:

    library(d3Network)
    d3Sankey(Links = df2[ ,('value')], Nodes = df3[ , c('name')], Source = "source", 
    Target = "target")
Error in d3Sankey(Links = df2[, ("value")], Nodes = df3[, c("name")],  : 
Links must be a data frame class object.
    df2 <- as.data.frame(df2)
    d3Sankey(Links = df2[ ,('value')], Nodes = df3[ , c('name')], Source = "source", 
    Target = "target")
Error in d3Sankey(Links = df2[, ("value")], Nodes = df3[, c("name")],  : 
Links must be a data frame class object.
    typeof(df2)
  [1] "list"

有了这些信息,有谁知道如何将 df2 转换为数据框类对象?

df2 df1

I'm trying to create a Sankey Plot in R, but I keep getting an error that one of the parameters needs to be a Data Frame Class Object. See below:

    library(d3Network)
    d3Sankey(Links = df2[ ,('value')], Nodes = df3[ , c('name')], Source = "source", 
    Target = "target")
Error in d3Sankey(Links = df2[, ("value")], Nodes = df3[, c("name")],  : 
Links must be a data frame class object.
    df2 <- as.data.frame(df2)
    d3Sankey(Links = df2[ ,('value')], Nodes = df3[ , c('name')], Source = "source", 
    Target = "target")
Error in d3Sankey(Links = df2[, ("value")], Nodes = df3[, c("name")],  : 
Links must be a data frame class object.
    typeof(df2)
  [1] "list"

With this information, does anyone know how to convert df2 to a data frame class object?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

草莓味的萝莉 2025-01-20 15:04:18

LinksNodes 应该是 data.frames - Links data.frame 应该有三列 source目标,具有单列名称节点。在OP的代码中,两者都作为向量提供,因为在data.frame中,如果我们使用带有单个列名的,,它删除尺寸(drop = TRUE - 默认情况下)。为了保存输出,请指定file

library(d3Network)
d3Sankey(Links = df2[c('source', 'target', 'value')], 
   Nodes = df3[c('name')], Source = "source",   
     Target = "target", file = "sankeyfile.html")

The Links, Nodes should be data.frames - Links data.frame should have three columns source, target and value, Nodes with a single column name. In the OP's code, both are provided as vectors because in data.frame, if we use a , with a single column name, it drops the dimensions (drop = TRUE - by default). In order to save the output, specify file

library(d3Network)
d3Sankey(Links = df2[c('source', 'target', 'value')], 
   Nodes = df3[c('name')], Source = "source",   
     Target = "target", file = "sankeyfile.html")
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文