[英]Python: for loop and saving to a new CSV file with pandas
一直在搜尋,但似乎無法解決此問題。
我有一個包含兩個標題的“ csv”文件,“名稱”和“ URL”。 我將其保存在名為df1的變量中,如下所示:
`
import pandas as pd
df1 = pd.read_csv('yahoo finance.csv')
print(df1)
Name URL
0 Gainers https://au.finance.yahoo.com/gainers?e=ax
1 Losers https://au.finance.yahoo.com/losers
2 Active https://au.finance.yahoo.com/most-active
`
我想做的是進入上述每個URL,解析其中的表,然后將數據保存在新的CSV文件中。
`
for u in df1.URL:
u2 = pd.read_html(u)
for n in u2:
row2 = pd.DataFrame(num)
row2.to_csv(name+'.csv', index=False)
`
我在這里錯過了我無法解決的一大步驟,我想將每個URL中的表保存到新CSV中,其名稱來自相應URL的“名稱”列。
有人可以幫我解決這個簡單的部分嗎? 當前,所有這些代碼所做的只是將最后一個URL的數據保存到名為“ Active”的csv中,而根本沒有保存前兩個URL。
先感謝您!
您是說需要逐行迭代數據幀嗎? URL
值用於獲取數據。 “ Name
用於保存數據。 如果有可能,你需要它
for row in df.iterrows():
name = row[1]['Name']
url = row[1]['URL']
謝謝您,這已幫助解決了問題,CSV文件已保存在應有的狀態。 更新的代碼是:
for row in df1.iterrows():
name = row[1]['Name']
url = row[1]['URL']
url2 = str(url)
url3 = pd.read_html(url2)
for num in url3:
row2 = pd.DataFrame(num)
row2.to_csv(name+'.csv', index=False)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.