爆速Python 電子書籍|翔泳社の本
  1. ホーム >
  2. 電子書籍 >
  3. 爆速Python

爆速Python

原著
監修
翻訳

形式:
電子書籍
発売日:
ISBN:
9784798187730
価格:
3,960(本体3,600円+税10%)
カテゴリ:
プログラミング・開発
キーワード:
#プログラミング,#開発環境,#開発手法,#Web・アプリ開発
シリーズ:
Programmer's SELECTION
電子書籍

「そう、すべては速さのために」

Pythonでデータセットを扱う際、最後に重要になってくるのはやはり「処理速度」です。データが巨大であればあるほど、ちょっとした工夫が処理速度を向上させ、「データの氾濫」ともいえる現状を打開する鍵になってくれます。

Pythonの特性を理解しつつそのパフォーマンスを最大限に引き出し、さらにハイパフォーマンスなライブラリを正しく利用することができれば、遅い遅いといわれがちなPythonにおいても、爆速な処理を手にすることができるのです。

本書は、組み込み機能やスレッディング特性、CPythonのグローバルインタプリタロック(GIL)などに始まり、Cythonへの移行やGPUの利用に至るまでの多面的なアプローチを紹介し、単にマシン性能を上げたり、マシンの数を増やすだけでは得られない、効率的なPythonアプリケーションの記述をサポートします。

【本書は『Fast Python: High performance techniques for large datasets』の邦訳書です。】

◆◆◆◆◆もくじ◆◆◆◆◆

●Part 1 基礎的なアプローチ
 ・Chapter 1 データ処理の効率化が急がれている
 ・Chapter 2 組み込み機能のパフォーマンスを最大限に引き出す
 ・Chapter 3 並行性、並列性、非同期処理
 ・Chapter 4 ハイパフォーマンスなNumPy
●Part 2 ハードウェア
 ・Chapter 5 Cythonを使って重要なコードを再実装する
 ・Chapter 6 メモリ階層、ストレージ、ネットワーク
●Part 3 現代のデータ処理のためのアプリケーションとライブラリ
 ・Chapter 7 ハイパフォーマンスなpandasとApache Arrow
 ・Chapter 8 ビッグデータの格納
●Part 4 高度なトピック
 ・Chapter 9 GPUコンピューティングを使ったデータ分析
 ・Chapter 10 Daskを使ったビッグデータの分析

 ・付録A 環境のセットアップ
 ・付録B Numbaを使って効率的な低レベルコードを生成する

※本電子書籍は同名出版物を底本として作成しました。記載内容は印刷出版当時のものです。
※印刷出版再現のため電子書籍としては不要な情報を含んでいる場合があります。
※印刷出版とは異なる表記・表現の場合があります。予めご了承ください。
※プレビューにてお手持ちの電子端末での表示状態をご確認の上、商品をお買い求めください。

(翔泳社)

画像01
画像02
画像03
目次の登録はありません。
本書は付属データの提供はございません。

お問い合わせ

内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。

正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。

利用許諾に関するお問い合わせ

本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。

追加情報はありません。
この商品の「よくある質問」はありません。

現在表示されている正誤表の対象書籍

書籍の種類:電子書籍

書籍の刷数:全刷


※重版をした際に、内容が修正されている場合があります。「刷数の確認方法(例)」の図を参考に、お手元の書籍の刷数をご確認ください。下の「書籍の刷数」の欄で刷数を選択すると、お持ちの書籍の刷数に合わせて、正誤情報を絞り込むことができます。

書籍によっては表記が異なる場合がございます


本書に誤りまたは不十分な記述がありました。下記のとおり訂正し、お詫び申し上げます。

対象の書籍は正誤表がありません。

 書籍の刷数で正誤情報を絞り込みたい場合は選択してください。

 書籍の種類:

最終更新日:2024年08月02日
ページ数 内容 発生刷 書籍修正刷 電子書籍訂正 登録日
098
リスト直後の本文
結果は(10,) (4,)、(20, 4)、(4, 20) になります。
ストライドは(4,)、(20, 4)、(4, 20) になります。

リフローEPUBの場合、図4-3の下にある3行のコード枠のすぐ下の段落が該当箇所になります。
1刷 2刷 2024.08.02
099
本文最初の段落
2 次元配列の場合はもう少し複雑です。2 × 5 配列で列を前方に移動したい場合、要素は隣接しているため、要素1 つ分(現在の要素の分だけ)移動する必要があります(図4-5)。要素のサイズは4 バイトなので、ストライドは4 になります。ただし、行を前方に移動したい場合は、(各行に要素が5 つあるため)現在の要素+ 4 だけスキップする必要があります。したがって、5(要素の個数)× 4(要素のサイズ)= 20 になります。メモリをこのように解釈すると、関数strides[0]*i + strides[1]*j (20*i + 4*j)を使って要素i,j にアクセスできます。
2 次元配列の場合はもう少し複雑です。2 × 5 配列で列を前方に移動したい場合、要素は隣接しているため、要素1 つ分(現在の要素の分だけ)移動する必要があります(図4-5)。要素のサイズは4 バイトなので、ストライドは4 になります。ただし、行を前方に移動したい場合、ストライドは5(要素の個数)× 4(要素のサイズ)= 20 になります。メモリをこのように解釈すると、関数strides[0]*i + strides[1]*j (20*i + 4*j)を使って要素i,j にアクセスできます。

リフローEPUBの場合、図4-4のすぐ下の段落が該当箇所になります。
1刷 2刷 2024.08.02
099
本文2つ目の段落
m5x2 のストライドは4, 20 です。つまり、次元は2 つであり、次の行へ移動するには4 バイト× 5 列= 20 バイトだけ移動する必要があります。次の列は4 バイト離れた次の値です。
m5x2 のストライドは4, 20 です。次の行に移動するには、4バイトだけ移動する必要があります。次の列は20バイト離れた次の値です。

リフローEPUBの場合、図4-5のすぐ下の段落が該当箇所になります。
1刷 2刷 2024.08.02
100
図4-6中、「どう見えるか」の内容
0 1 2 3 4 5 6 7 8 9
0 5 1 6 2 7 3 8 4 9
1刷 2刷 2024.08.02