添加列到输出功能

时间:2018-05-06 10:13:32

标签: r multiple-columns spotify

我正在努力解决以下问题,希望你能帮我解决这个问题。

我使用函数从Spotify中获取日期范围内的所有图表数据。但是,该功能的输出并不能告诉您哪一天与返回的200首曲目相关联。我尝试添加列,但由于函数输出的长度和初始输入日期不同,这似乎不起作用。

position track.name    artist          streams url                                                  
      <int> <chr>         <chr>             <int> <chr>                                                
 1        1 Sofiane       Boef             299735 https://open.spotify.com/track/7aK0LpCyxzN5K9pAP20MVC
 2        2 Beetje Moe    Kevin            220181 https://open.spotify.com/track/5ncYmvTAX7RbJSvoFGrSkv
 3        3 Lil Craney    Kraantje Pappie  185912 https://open.spotify.com/track/6mhojtIauujcoXxlGsihh1
 4        4 Drip          SFB              171255 https://open.spotify.com/track/7ulH79Yk90PkLsEjYjVyif
 5        5 God's Plan    Drake            158205 https://open.spotify.com/track/2XW4DbS6NddZxRPm5rMCeY

输出为您提供:

{{1}}

(每天返回200首曲目)

我希望添加图表日期以及国家/地区代码。

我对R很新,所以对新手问题表示道歉 - 也尝试查找解决方案,但似乎没有任何效果。

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以简化一些事情。您的日期不需要是列表 - 日期向量就足够map_df。如果国家/地区保持不变,您也不需要国家/地区列表或矢量。在map使用的函数内,您可以从chart_top200_daily获取一个数据框,您可以在其中调用mutate来添加日期列。

library(tidyverse)
library(spotifycharts)

datums <- seq(as.Date('2018-04-01'), as.Date('2018-05-05'), by = 1)
# dates <- list(datums)

chart <- map_df(datums, function(date) {
    chart_top200_daily("nl", date) %>%
        mutate(date = date)
})

chart
#> # A tibble: 7,000 x 6
#>    position track.name    artist          streams url           date      
#>       <int> <chr>         <chr>             <int> <chr>         <date>    
#>  1        1 Sofiane       Boef             299735 https://open… 2018-04-01
#>  2        2 Beetje Moe    Kevin            220181 https://open… 2018-04-01
#>  3        3 Lil Craney    Kraantje Pappie  185912 https://open… 2018-04-01
#>  4        4 Drip          SFB              171255 https://open… 2018-04-01
#>  5        5 God's Plan    Drake            158205 https://open… 2018-04-01
#>  6        6 Ze Willen Mee Hardwell         154086 https://open… 2018-04-01
#>  7        7 Catch Up      Josylvio         142023 https://open… 2018-04-01
#>  8        8 FRIENDS       Marshmello       140276 https://open… 2018-04-01
#>  9        9 Non Stop      Ronnie Flex      139419 https://open… 2018-04-01
#> 10       10 Fan           Ronnie Flex      132936 https://open… 2018-04-01
#> # ... with 6,990 more rows

reprex package(v0.2.0)创建于2018-05-06。