Python で CSV ファイルを処理するときにヘッダーをスキップする
問題:
処理しようとしたときPython を使用した CSV ファイルの場合、ヘッダーを含む最初の行が、処理関数によって変更されています。目的は、ヘッダーを除いて CSV ファイルを 2 行目から編集することです。
解決策:
この問題を解決するには、次のように提供されている csv.reader オブジェクトを使用します。 Python CSV モジュールを使用すると、処理中にヘッダーをスキップできます。次の手順は解決策の概要です:
CSV ファイルをコンテキスト マネージャーとして開きます:
<code class="python">with open("tmob_notcleaned.csv", "rb") as in_file, open("tmob_cleaned.csv", "wb") as out_file:</code>
コンテキスト マネージャーとして使用すると、自動的にCSV ファイルを開いたり閉じたりして、適切なリソースを確保するManagement.
Reader オブジェクトと Writer オブジェクトを作成します:
<code class="python">reader = csv.reader(in_file) writer = csv.writer(out_file)</code>
csv.reader は、CSV 行を反復処理するための反復可能オブジェクトを作成します。一方、 csv.writer では出力 CSV に行を書き込むことができます。 file.
ヘッダーをスキップ:
<code class="python">next(reader, None)</code>
この行は、変数に代入せずに反復子を最初の行に進めます。 2 番目の引数として None を指定すると、スキップされた行は破棄されます。
残りの行の処理と書き込み:
<code class="python">for row in reader: # Perform processing writer.writerow(row)</code>
反復処理ヘッダーを除く残りの行は必要な処理を実行し、変更された行を出力に書き込みます。 file.
オプションでヘッダーを書き込みます (必要な場合):
<code class="python">headers = next(reader, None) if headers: writer.writerow(headers)</code>
このコード ブロックでは、出力ファイルにヘッダーを書き込むことができます。 next() の結果を渡すことで未処理になります。 Writer.writerow().
これらの手順に従うと、Python コードは CSV ファイルを処理するときにヘッダーをスキップし、最初の行が変更されないようにします。
以上がPython で CSV ファイルを処理するときにヘッダーをスキップするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。