Python Numpyアレイ操作
Numpyアレイの操作は、主に配列の作成、形状視聴、変形、インデックススライス、スプライシングと分割、ブロードキャストメカニズムを含む、Pythonデータ処理の基礎です。 1.一般的に使用される配列を作成しますnp.array()、np.zeros()、np.ones()、np.arange(); 2。.shape属性を使用して、配列の形状を表示します。 3.シェープは、アレイの形状を変更し、要素の総数を一貫性のある状態に保ち、-1を使用して寸法を計算することに注意してください。 4.インデックスおよびスライスサポート多次元操作、インデックスは0から始まり、スライスは左に閉じられ、右に開いています。 5. np.concatenate、np.vstack、np.hstack for splicing、およびnp.splitを分割に使用します。 6.ブロードキャストメカニズムにより、さまざまな形状での配列操作が可能になり、ディメンションマッチングルールを満たす必要があります。これらの操作をマスターすると、ほとんどのデータ処理タスクに対処できます。
Numpyは、Pythonで科学コンピューティングのために使用されるコアライブラリの1つであり、特にその配列(NDARRAY)構造は、ほぼすべてのデータ処理、機械学習、視覚化ライブラリに基づいています。 Numpyアレイの操作をマスターすることは、Pythonを使用してデータ作業を行うための基礎です。

次の操作は、日常生活でアレイを処理する際に遭遇する最も一般的で実用的なものです。
配列の形状を作成して表示します
配列を操作する前に、最初に配列を作成してからその構造を表示する必要があります。
最も一般的な方法は、 np.array()
を使用するか、 np.zeros()
、 np.ones()
、またはnp.arange()
を使用して、特定の構造の配列を迅速に生成することです。

npとしてnumpyをインポートします a = np.array([1、2、3]) b = np.zeros((3、4))#0 3行と4列のc = np.arange(10)#1D配列を備えたアレイ0から9まで
配列の形状を表示するには、 .shape
プロパティを使用できます。
print(c.shape)#出力(10、)
2次元配列の場合、 .shape
Returns(行数、列数)。

配列変形(再シェープ)
Reshapeは、配列の形状を変更するための基本的な操作であり、データの前処理またはモデルの入力準備によく使用されます。
d = np.Arange(12) e = d.reshape(3、4)##3列と4列になります
注意すべきいくつかのこと:
- 変更後の要素の総数は同じでなければなりません。そうしないと、エラーが報告されます。
-
-1
使用してreshape(2, -1)
などの特定の次元のサイズを自動的に計算できます。 - Reshapeはコピーではなくビューを返し、変更は元の配列に影響します。
インデックス作成およびスライス操作
Pythonリストと同様に、Numpyアレイはインデックス作成とスライスもサポートしますが、より柔軟で、特に多次元アレイに適しています。
1次元配列:
arr = np.arange(10) print(arr [2:5])#出力[2 3 4]
二次元配列:
Matrix = np.Array([[1,2,3]、[4,5,6]、[7,8,9]]) print(matrix [1、2])#出力6 print(matrix [0:2、1:])#出力[[2 3]、[5 6]]
いくつかの重要なポイントを覚えておいてください:
- インデックスは0から始まります。
- スライスは、左右の開口部があるセクションです。
- 多次元配列は、各ディメンションのインデックスをコンマで分離します。
配列ステッチと分割
複数の配列を処理する場合、スプライスまたは分割する必要があることがよくあります。一般的に使用される関数には、 np.concatenate
、 np.vstack
、 np.hstack
、 np.split
などが含まれます。
スプライシング例:
x = np.array([1、2、3]) y = np.array([4、5、6]) z = np.concatenate([x、y])#出力[1 2 3 4 5 6]
2次元配列をスプライシングする場合、軸の方向に注意してください。
a = np.array([[1、2]、[3、4]]) b = np.array([[5、6]]) c = np.vstack([a、b])#垂直スプライシング
スプリットは似ています:
arr = np.arange(10) parts = np.split(arr、[3、6])#3つのセグメントに分割:0〜3、3〜6、6〜10
ヒント:放送
ブロードキャストメカニズムは、アレイにスカラーを追加するなど、さまざまな形状の配列が操作を実行できるようにするNumpyのハイライトです。
a = np.array([1、2、3]) b = a 5#結果は[6、7、8]です
ブロードキャストのルールは少し複雑ですが、1つの原則を覚えておいてください。寸法を後ろから最前線に比較します。また、対応する寸法が等しいか、1が1である限り、ブロードキャストできます。
このメカニズムは、ベクトル操作を処理する場合に非常に効率的ですが、特に寸法が一貫していない場合は、エラーも発生しやすいです。
基本的にそれだけです。 Numpyアレイには多くの操作がありますが、これらは一般的な操作です。これらを習得すると、ほとんどのデータ処理タスクに対処できます。
以上がPython Numpyアレイ操作の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

Pyodbcのインストール:Pipinstallpyodbcコマンドを使用してライブラリをインストールします。 2.接続sqlserver:pyodbc.connect()メソッドを介して、ドライバー、サーバー、データベース、uid/pwdまたはtrusted_connectionを含む接続文字列を使用し、それぞれSQL認証またはWindows認証をサポートします。 3.インストールされているドライバーを確認します:pyodbc.drivers()を実行し、「sqlserver」を含むドライバー名をフィルタリングして、「sqlserverのodbcdriver17」などの正しいドライバー名が使用されるようにします。 4.接続文字列の重要なパラメーター

httpx.asyncclientを使用して、非同期httpリクエストを効率的に開始します。 1.基本的なGETリクエストは、asyncwithを介してクライアントを管理し、awaitclient.getを使用して非ブロッキングリクエストを開始します。 2。asyncio.gatherを組み合わせてasyncio.gatherを組み合わせると、パフォーマンスが大幅に向上する可能性があり、合計時間は最も遅いリクエストに等しくなります。 3.カスタムヘッダー、認証、base_url、タイムアウト設定をサポートします。 4。投稿リクエストを送信してJSONデータを伝達できます。 5.同期非同期コードの混合を避けるために注意してください。プロキシサポートは、クローラーやAPI集約、その他のシナリオに適したバックエンド互換性に注意を払う必要があります。

Pythoncanbeoptimizedformemory-boundoperationsは、ヘッドゲネレーター、EfficientDataStructures、およびManagingObjectlifetimes.first、Usegeneratoratoratoratoratoratoraturatussを使用していることを確認してください

この記事の目的は、Sqlalchemyの初心者がCreate_Engineを使用したときに遭遇した「removedin20warning」警告を解決することを支援することを支援することを支援することを支援することを目的としています。この記事では、この警告の原因を詳細に説明し、特定の手順とコード例を提供して、警告と接続の問題を排除し、データベースをスムーズにクエリして操作できるようにします。

shutil.rmtree()は、ディレクトリツリー全体を再帰的に削除するPythonの関数です。指定されたフォルダーとすべてのコンテンツを削除できます。 1.基本的な使用法:shutil.rmtree(PATH)を使用してディレクトリを削除すると、FilenotFounderror、PermissionError、その他の例外を処理する必要があります。 2。実用的なアプリケーション:一時的なデータやキャッシュディレクトリなど、サブディレクトリとファイルを1回クリックして含むフォルダーをクリアできます。 3。注:削除操作は復元されません。 FilenotFounderrorは、パスが存在しない場合に投げられます。許可またはファイル職業のために失敗する可能性があります。 4.オプションのパラメーター:INGRORE_ERRORS = trueでエラーを無視できます

対応するデータベースドライバーをインストールします。 2。CONNECT()を使用してデータベースに接続します。 3.カーソルオブジェクトを作成します。 4。Execute()またはexecuteMany()を使用してSQLを実行し、パラメーター化されたクエリを使用して噴射を防ぎます。 5。Fetchall()などを使用して結果を得る。 6。COMMING()は、変更後に必要です。 7.最後に、接続を閉じるか、コンテキストマネージャーを使用して自動的に処理します。完全なプロセスにより、SQL操作が安全で効率的であることが保証されます。

Pythonは、ETLプロセスを実装するための効率的なツールです。 1。データ抽出:データベース、API、ファイル、およびその他のソースからデータを抽出できます。Pandas、Sqlalchemy、Requests、その他のライブラリを介して。 2。データ変換:パンダを使用して、クリーニング、タイプ変換、関連性、集約、その他の操作を使用して、データの品質を確保し、パフォーマンスを最適化します。 3。データの読み込み:PandasのTO_SQLメソッドまたはクラウドプラットフォームSDKを使用して、ターゲットシステムにデータを書き込み、書き込み方法とバッチ処理に注意してください。 4。ツールの推奨事項:気流、ダグスター、長官は、ログアラームと仮想環境を組み合わせて、安定性と保守性を向上させるために、プロセスのスケジューリングと管理に使用されます。

psycopg2.pool.simpleconnectionPoolを使用して、データベース接続を効果的に管理し、頻繁な接続の作成と破壊によって引き起こされるパフォーマンスオーバーヘッドを回避します。 1.接続プールを作成するときは、接続プールが正常に初期化されていることを確認するために、接続パラメーターとデータベース接続パラメーターの最小数と最大数を指定します。 2。getConn()を介して接続を取得し、putconn()を使用して、データベース操作を実行した後に接続をプールに戻します。絶えずconn.close()を呼び出すことは禁止されています。 3. SimpleConnectionPoolはスレッドセーフであり、マルチスレッド環境に適しています。 4.コンテキストマネージャーと組み合わせてコンテキストマネージャーを実装して、例外が記載されているときに接続を正しく返すことができることを確認することをお勧めします。
