亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何迭代數據幀的行

如何迭代數據幀的行

MMTTMM 2021-09-02 20:37:07
我正在創建一個腳本,它采用藝術家的數據幀,將它們傳遞給 Spotify API 并返回一些額外的信息。我正在努力研究如何最好地將藝術家的數據幀迭代地傳遞給調用 Spotify 的函數。我有兩個功能:artists = grabArtists()它返回藝術家列表,例如:0                                      Gas1                                   System3                       Finlay Shakespeare4                         Boards Of Canada6    Delia Derbyshire Appreciation Society然后我有功能抓取 Spotify 藝術家數據...def grabSpotifyData(searchQ):# ERASE CACHE AND PROMPT FOR USER PERMISSIONclient_credentials_manager = SpotifyClientCredentials()sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)# SEARCH FOR AN ARTISTsearchQuery = searchQsearch = sp.search(searchQuery, 1, 0, "artist")artist = search['artists']['items'][0]genres = artist['genres']image = artist['images'][0]['url']pop = artist['popularity']followers = artist['followers']['total']return genres, image, pop, followers我可以通過以下操作非常簡單地獲取單個結果的數據幀。我怎樣才能進行這個迭代,以便它通過藝術家列表循環并附加關于藝術家的上下文?artists = grabArtists()[0]result = grabSpotifyData(artists)df = pd.DataFrame([(artists), (result[0]), (result[1]), (result[2]), (result[3])])df = df.T它應該返回一個數據框,其中的列是:藝術家、流派、圖像、流行度、追隨者。提前致謝!
查看完整描述

2 回答

?
SMILET

TA貢獻1796條經驗 獲得超4個贊

我認為您可以將藝術家作為列表迭代傳遞給 api:


df = []

for artist in artists:

    result = grabSpotifyData(artist)

    d0 = pd.DataFrame([(artists), (result[0]), (result[1]), (result[2], (result[3])])

    df.append(d0)


df = pd.concat(df, axis=1)


查看完整回答
反對 回復 2021-09-02
?
LEATH

TA貢獻1936條經驗 獲得超7個贊

df = pd.DataFrame()


for artist in artists:

    try:

        results = grabSpotifyData(artist)

    except IndexError:

        pass

    df = df.append(results)


df = pd.DataFrame(df)

df = df.reset_index()


查看完整回答
反對 回復 2021-09-02
  • 2 回答
  • 0 關注
  • 173 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號