Skip to Content
Pythonデータサイエンスハンドブック ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習
book

Pythonデータサイエンスハンドブック ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習

by Jake VanderPlas, 菊池 彰
May 2018
Intermediate to advanced
556 pages
13h 21m
Japanese
O'Reilly Japan, Inc.
Content preview from Pythonデータサイエンスハンドブック ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習
216
3
章 
pandas
を使ったデータ操作
In[28]: df.values.nbytes
Out[28]: 32000
計算時間について考えると、システムメモリを最大限に活用していない場合でも、
eval()
の方
が高速になります。考慮すべき点は、一時的な
DataFrame
のサイズとシステム上の
L1
または
L2
CPU
キャッシュサイズ(
2016
年の時点では、通常数メガバイト)との比較です。もしも
DataFrame
の方がずっと大きいのであれば、異なるメモリキャッシュの間で値を移動することにより動作が遅
くなるのを、
eval()
で防ぐことが可能です。実際には、従来の方法と
eval
/
query
を使った方法と
の比較で、計算時間の差はあまり重要ではないことがわかっています。それどころか小さな配列に
対しては、従来の方法の方が高速です。
eval
/
query
が優れているのは、主にメモリの使用量が少
ない点、そして場合により洗練された構文が利用できる点です。
こでは、
eval()
query()
の詳細について説明しました。より詳しい内容については、
pandas
のドキュメントを参照してください。デフォルトとは異なるパーサーや実行エンジンを指定し
eval()
query()
を実行することもできます。その詳細については、
pandas
ドキュメントの
Enhancing Performance
」(パフォーマンスの向上)セクション(
http://pandas.pydata.org/pandas-
docs/dev/enhancingper ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Pythonデータサイエンスハンドブック 第2版 ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習

Pythonデータサイエンスハンドブック 第2版 ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習

Jake VanderPlas, 菊池 彰
初めてのGraphQL ―Webサービスを作って学ぶ新世代API

初めてのGraphQL ―Webサービスを作って学ぶ新世代API

Eve Porcello, Alex Banks, 尾崎 沙耶, あんどうやすし

Publisher Resources

ISBN: 9784873118413Other