競プロ記録

問題を解いた際に自分の復習用として使ってます

Pythonによるデータ分析入門:メモ

内容

ちらほらエラーがでるところがあったので修正した箇所一覧をまとめました。

p28

  • 修正前
users = pd.read_table('pydata-book/datasets/movielens/users.dat', sep='::', header=None, names=unames)
  • 修正後
users = pd.read_table('pydata-book/datasets/movielens/users.dat', sep='::', header=None, names=unames, engine='python')

p30

  • 修正前
mean_ratings = data.pivot_table('rating', rows='title',cols='gender', aggfunc='mean')
  • 修正後
mean_ratings = data.pivot_table('rating', index='title',columns='gender', aggfunc='mean')

p32

  • 修正前
top_female_ratings = mean_ratings.sort_index(by='F', ascending=False)
  • 修正後
top_female_ratings = mean_ratings.sort_values(by='F', ascending=False)

rating_std_by_title = data.groupby('title')['rating'].std() rating_std_by_title = rating_std_by_title.loc[active_titles] rating_std_by_title.sort_values(ascending=False)[:10]

p33

  • 修正前
rating_std_by_title = data.groupby('title')['rating'].std()
rating_std_by_title = rating_std_by_title.ix[active_titles]
rating_std_by_title.order(ascending=False)[:10]
  • 修正後
rating_std_by_title = data.groupby('title')['rating'].std()
rating_std_by_title = rating_std_by_title.loc[active_titles]
rating_std_by_title.sort_values(ascending=False)[:10]

#

  • 修正前
subset = total_births[['John', 'Harry', 'Mary', 'Marilyn']]
subset.plot(subplots=True, figsize=(12, 10), grid=False, title="Number of births per year")
  • 修正後
実行できませんでした。

p112など

  • 修正前
arr = randn(4, 4)
  • 修正後
arr = np.random.randn(4,4)

メモ

axis=0は縦
axis=1は横

メモ

4.4.2 ndarrayの保存:テキスト形式
array_ex.txtがないのでスキップ

p121

  • 修正前
X = np.random.randn(5, 5)
mat = X.T.dot(X)
mat.dot(inv(mat))
  • 修正後
正しい結果にならない。わからない。

p122

%timeit はIPythonの機能
Jupyter notebookでは機能しない

np.random.randint

numpy.random.randint(low, high=None, size=None, dtype='l')

np.cumsum

numpy.cumsum(a, axis=None, dtype=None, out=None)[source]

p134

  • 修正前
frame2.ix['three']
  • 修正後
frame2.loc['three']

p154

  • 修正前
obj.order()
  • 修正後
obj.sort_value()

p155

  • 修正前
frame.sort_index(by = 'b')
  • 修正後
frame.sort_values(by='b')

p155

  • 修正前
frame.sort_index(by = ['a', 'b'])
  • 修正後
frame.sort_values(by = ['a', 'b'])

p160

  • 修正前
import pandas.io.data as web
  • 修正後
sudo pip install pandas-datareader

または

sudo python3 -m pip install pandas_datareader

してから

import pandas_datareader.data as web

price = DataFrame({tic : data['Adj Close'] for tic, data in all_data.items()}) volume = DataFrame({tic: data['Volume'] for tic, data in all_data.items()})

p160

  • 修正前
piece = DataFrame({tic : data['Adj Close']
                  for tic, data in all_data_iteritems()})
volume = DataFrame({tic : data['Volume'] for tic, data in all_data.iteritems()})
  • 修正後
price = DataFrame({tic : data['Adj Close']
                  for tic, data in all_data.items()})
volume = DataFrame({tic: data['Volume']
                             for tic, data in all_data.items()})

p192

  • 修正前
from urllib2 import urlopen
  • 修正後
from urllib.request import urlopen

メモ

  • 開始
p195 6.1.51 lxml.objectify を使ったXMLの読み込み
  • 終了
7章の終わりまで