【问题标题】:passing elements returned by an API to a Pandas DF将 API 返回的元素传递给 Pandas DF
【发布时间】:2016-04-16 21:36:30
【问题描述】:

我对 pandas 很陌生,看起来它是我所想的最好的工具。我能够从 soundcloud API 收集某些数据,并打印所需的字段:

for track in tracks:
    print track.title, "-", track.genre, "-", track.tag_list, "-", track.created_at, "-", track.last_modified, "-", \
    track.permalink_url, "-", track.playback_count, "-", track.duration

轨道本身会返回:

[<soundcloud.resource.Resource object at 0x10bd66e50>, <soundcloud.resource.Resource object at 0x10bd66ad0>, <soundcloud.resource.Resource object at 0x10bd66b10>, <soundcloud.resource.Resource object at 0x10bd75d50>, <soundcloud.resource.Resource object at 0x10bd75c10>

有没有一种简单的方法可以在 pandas df 中获取所有(或部分组件)曲目对象(曲目、流派等)?我是否必须打印到文件或其他东西(我稍后可能需要),然后使用 pd.read_csv() 或类似功能?

【问题讨论】:

  • 永远不要将某些内容打印到 CSV,以便您可以从 CSV 中读取。
  • 您使用的是soundcloud-python 包吗?如果是这样,请尝试使用:[track.fields() for track in tracks]

标签: python pandas soundcloud


【解决方案1】:

您可以使用列表推导式创建 DataFrame。

all_tracks = pd.DataFrame(
    [(t.title, t.genre, t.tag_list, t.created_at, t.last_modified, 
      t.permalink_url, t.playback_count, t.duration) 
     for t in tracks], 
    columns=['title', 'genre', 'tag_list', 'created_at', 'last_modified',
             'permalink_url', 'playback_count', 'duration'])

【讨论】:

    猜你喜欢
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 2017-05-23
    • 1970-01-01
    • 2021-05-16
    • 1970-01-01
    • 1970-01-01
    • 2011-07-15
    相关资源
    最近更新 更多