R语言 拆分数据集以实现可视化[已关闭]

tkclm6bt  于 2023-10-13  发布在  其他
关注(0)|答案(1)|浏览(100)

已关闭,此问题需要details or clarity。它目前不接受回答。
**想改善这个问题吗?**通过editing this post添加详细信息并澄清问题。

7小时前关闭
Improve this question
我试图找到两个数据集之间的重叠,数据集A是电子书,数据集B是印刷和有声读物。我已经通过标题和作者匹配了两个数据集,并删除了任何不匹配的值。问题是,我试图通过比较A和B数据集的使用情况来为新数据集C创建可视化,但现在数据集C中有两个单独的列。所以,我想我会再次打破数据集除了现在我已经把它降到我需要的位。
新的数据集C包含1567个值,看起来像这样:
| 标题|作者|结账|格式|作者|第二章|使用|
| --|--|--|--|--|--|--|
| 横|Patt| 46 |电子书|Patt|打印| 2 |
| 最大|Patt| 246 |电子书|Patt|有声读物| 38 |
我希望数据集看起来像这样,有重复的标题和作者字段:
| 标题|作者|使用|格式|
| --|--|--|--|
| 横|Patt| 46 |电子书|
| 横|Patt| 2 |打印|
| 最大|Patt| 246 |电子书|
| 最大|Patt| 38 |有声读物|
我试过pivot_longer,但我总是得到一个错误,不能合并,因为一列是字符,另一列是整数。

ix0qys7i

ix0qys7i1#

你可以这样做。

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union

df <-
  data.frame(
       Title = c("Cross", "Maximum"),
      Author = c("Patt", "Patt"),
   Checkouts = c(46L, 246L),
      Format = c("Ebook", "Ebook"),
      Author = c("Patt", "Patt"),
    Format.2 = c("Print", "Audiobook"),
       Usage = c(2L, 38L)
  )

df2 <-
  df %>% 
    select(
        Title, 
        Author, 
        'Format' = Format.2, 
        Usage 
    )

df3 <-
  df %>% 
    select(
      Title,
      Author, 
      Format, 
      'Usage' = Checkouts
    )

bind_rows(df2, df3)
#>     Title Author    Format Usage
#> 1   Cross   Patt     Print     2
#> 2 Maximum   Patt Audiobook    38
#> 3   Cross   Patt     Ebook    46
#> 4 Maximum   Patt     Ebook   246

创建于2023-10-12使用reprex v2.0.2

相关问题