我最近從 youtube API 中提取了資料,并且正在嘗試使用該資訊創建一個資料框。
當我使用“列印”函式遍歷每個專案時,我會為每個變數得到 25 行輸出(這是我在創建的資料框中想要的)。
如何使用此資訊創建一個包含 25 行的新資料框,而不是資料框中的 1 行?
當我像這樣遍歷每個專案時:
df = pd.DataFrame(columns = ['video_title', 'video_id', 'date_created'])
#For Loop to Create columns for DataFrame
x=0
while x < len(response['items']):
video_title= response['items'][x]['snippet']['title']
video_id= response['items'][x]['id']['videoId']
date_created= response['items'][x]['snippet']['publishedAt']
x=x 1
#print(video_title, video_id)
df = df.append({'video_title': video_title,'video_id': video_id,
'date_created': date_created}, ignore_index=True)
=========回答更新==========感謝所有提供意見的人!
創建資料框的代碼是:
import pandas as pd
x=0
video_title = []
video_id = []
date_created = []
while x < len(response['items']):
video_title.append (response['items'][x]['snippet']
['title'])
video_id.append (response['items'][x]['id']['videoId'])
date_created.append (response['items'][x]['snippet'].
['publishedAt'])
x=x 1
#print(video_title, video_id)
df = pd.DataFrame({'video_title': video_title,'video_id':
video_id, 'date_created': date_created})
uj5u.com熱心網友回復:
根據我對 youtube API 回傳物件的了解, 'title' 、 'videoId' 和 'publishedAt' 的值是字串。從這些字串制作單個 df 的策略是:
- 將這些字串存盤在串列中。因此,您將擁有三個串列。
- 將串列轉換為 df
根據檢索到的 x 值,您將獲得帶有 x 行的 df。
例子:
import pandas as pd
x=0
video_title = []
video_id = []
date_created = []
while x < len(response['items']):
video_title.append (response['items'][x]['snippet']['title'])
video_id.append (response['items'][x]['id']['videoId'])
date_created.append (response['items'][x]['snippet']['publishedAt'])
x=x 1
#print(video_title, video_id)
df = pd.DataFrame({'video_title': video_title,'video_id':
video_id, 'date_created': date_created})
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/417259.html
標籤:
上一篇:如何在回圈中多次向前跳過?
下一篇:在fortran中優化陣列乘法
