如何在 csv 文件中存储 pandas 数据帧信息
How to store pandas dataframe information in a csv file
我是抓取和 python 的新手。我正试图从这个 URL: https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes 中抓取多个 tables。我进行了抓取,现在我正在尝试将数据框保存到 csv 文件中。我试过了,但它只存储了页面中的第一个 table。
代码:
from pandas.io.html import read_html
page = 'https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes'
wikitables = read_html(page, index_col=0, attrs={"class":"wikitable plainrowheaders wikiepisodetable"})
print ("Extracted {num} wikitables".format(num=len(wikitables)))
for line in range(7):
df= pd.DataFrame(wikitables[line].head())
df.to_csv('file1.csv')
你忘了
import pandas as pd
但您不需要它,因为 read_html
提供了数据帧列表,您不必将其转换为数据帧。可以直接写。
from pandas.io.html import read_html
url = 'https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes'
wikitables = read_html(url, index_col=0, attrs={"class":"wikitable plainrowheaders wikiepisodetable"})
print("Extracted {num} wikitables".format(num=len(wikitables)))
for i, dataframe in enumerate(wikitables):
dataframe.to_csv('file{}.csv'.format(i))
您需要将数据帧列表重新整形为单个数据帧,然后需要将其导出到 csv 文件。
wikitable = wikitables[0]
for i in range(1,len(wikitables)):
wikitable = wikitable.append(wikitables[i],sort=True)
wikitable.to_csv('wikitable.csv')
我是抓取和 python 的新手。我正试图从这个 URL: https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes 中抓取多个 tables。我进行了抓取,现在我正在尝试将数据框保存到 csv 文件中。我试过了,但它只存储了页面中的第一个 table。
代码:
from pandas.io.html import read_html
page = 'https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes'
wikitables = read_html(page, index_col=0, attrs={"class":"wikitable plainrowheaders wikiepisodetable"})
print ("Extracted {num} wikitables".format(num=len(wikitables)))
for line in range(7):
df= pd.DataFrame(wikitables[line].head())
df.to_csv('file1.csv')
你忘了
import pandas as pd
但您不需要它,因为 read_html
提供了数据帧列表,您不必将其转换为数据帧。可以直接写。
from pandas.io.html import read_html
url = 'https://en.wikipedia.org/wiki/List_of_Game_of_Thrones_episodes'
wikitables = read_html(url, index_col=0, attrs={"class":"wikitable plainrowheaders wikiepisodetable"})
print("Extracted {num} wikitables".format(num=len(wikitables)))
for i, dataframe in enumerate(wikitables):
dataframe.to_csv('file{}.csv'.format(i))
您需要将数据帧列表重新整形为单个数据帧,然后需要将其导出到 csv 文件。
wikitable = wikitables[0]
for i in range(1,len(wikitables)):
wikitable = wikitable.append(wikitables[i],sort=True)
wikitable.to_csv('wikitable.csv')