アフィリエイト広告を利用しています

広告

この広告は30日以上更新がないブログに表示されております。
新規記事の投稿を行うことで、非表示にすることが可能です。
posted by fanblog

2019年10月27日

【3日目】Udemy講座で学ぶ!実践 Python データサイエンス





進捗 29%
順調に進めている。

■セクション4:Pandas入門

Series, Frameの基本の勉強。
相変わらず、2倍速で講義は聞いて、概要をメモしてそれをjupyter notebookで再現する作業を繰り返している。
講義を聞いた時はできる!と思っても、いざ、手を動かすとまったくイメージが違い、エラーが出まくる。自分で書くので習得している感覚があるのが良い。

それにしても、Series, DataFrameはたくさん機能がある。実際どのぐらいの違いがあるのか?
ということでこれらのattribute, methodsを抽出するプログラムを書いてみた。



import requests
from pandas import Series


infolist.append({
'url':' https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.html',
'name':"DataFrame",
'index':[1,2]
})
infolist.append({
'url':' https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.html',
'name':"Series",
'index':[1,3] #Seriesのページはemptyの表があるのでそれをスキップするため、1,3とした
})

for info in infolist:
print(info['url'])
result = requests.get(info['url'])
c = result.content
processed =bs4.BeautifulSoup(c,'lxml')

print(info['name'])
id_name = 'pandas-' + info['name'].lower()

summary = processed.find_all('div',{'class':'section','id':id_name})

tables = summary[0].find_all('table')

cat = Series(info['index'], index={"Attribute", "Methods"})

for index in cat.index:
rows = tables[cat[index]].find_all('tr')

data = []

for row in rows:
cells = row.find_all('td')
t = cells[0].find(text=True)
data.append(t)

print("{} : count:{}".format(index,len(data)))
for i in data:
print(i)

print("")



なるほど、Seriesのほうが属性がちょっと多くて、メソッドは同じ数だけあるのか。
Webスクレイピングの復習になるし、ちょっと無理やりだがSeriesも使ってみた。

Series:
属性:34
メソッド:201

DataFrame:
属性:19
メソッド:201

■次は

 セクション4:Pandas入門のつづきを学ぶ。


このコースへのリンク
【世界で5万人が受講】実践 Python データサイエンス







全般ランキング
検索
<< 2019年10月 >>
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
最新記事
タグクラウド
カテゴリーアーカイブ
月別アーカイブ
プロフィール
peter3qさんの画像
peter3q
エンジニアとして働いている40代の会社員です。 仕事でメインに使用している言語はC/C++です。 プライベートでは、大学生の息子と中学生の娘がいて、 週末、料理をし、毎年、梅シロップを付けています。
×

この広告は30日以上新しい記事の更新がないブログに表示されております。

Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: