CSVファイルに新しい列を追加するにはどうすればよいですか?

フェアリーベリー:

次のようなCSVファイルがいくつかあります。

Input
Name        Code
blackberry  1
wineberry   2
rasberry    1
blueberry   1
mulberry    2

すべてのCSVファイルに新しい列を追加して、次のようにします。

Output
Name        Code    Berry
blackberry  1   blackberry
wineberry   2   wineberry
rasberry    1   rasberry
blueberry   1   blueberry
mulberry    2   mulberry

これまでのスクリプトは次のとおりです。

import csv
with open(input.csv,'r') as csvinput:
    with open(output.csv, 'w') as csvoutput:
        writer = csv.writer(csvoutput)
        for row in csv.reader(csvinput):
            writer.writerow(row+['Berry'])

(Python 3.2)

しかし、出力では、スクリプトはすべての行をスキップし、新しい列にはベリーのみが含まれています。

Output
Name        Code    Berry
blackberry  1   Berry

wineberry   2   Berry

rasberry    1   Berry

blueberry   1   Berry

mulberry    2   Berry
ホアキン:

これにより、何をすべきかがわかります。

>>> v = open('C:/test/test.csv')
>>> r = csv.reader(v)
>>> row0 = r.next()
>>> row0.append('berry')
>>> print row0
['Name', 'Code', 'berry']
>>> for item in r:
...     item.append(item[0])
...     print item
...     
['blackberry', '1', 'blackberry']
['wineberry', '2', 'wineberry']
['rasberry', '1', 'rasberry']
['blueberry', '1', 'blueberry']
['mulberry', '2', 'mulberry']
>>> 

編集、py3kで使用する必要があることに注意してください next(r)

答えを受け入れてくれてありがとう。ここにボーナスがあります(作業スクリプト):

import csv

with open('C:/test/test.csv','r') as csvinput:
    with open('C:/test/output.csv', 'w') as csvoutput:
        writer = csv.writer(csvoutput, lineterminator='\n')
        reader = csv.reader(csvinput)

        all = []
        row = next(reader)
        row.append('Berry')
        all.append(row)

        for row in reader:
            row.append(row[0])
            all.append(row)

        writer.writerows(all)

ご注意ください

  1. lineterminatorパラメータcsv.writerデフォルトではに設定されて'\r\n'おり、これが2倍の間隔がある理由です。
  2. リストを使用してすべての行を追加し、を使用してそれらを一度に記述しますwriterowsファイルが非常に大きい場合、これはおそらく良いアイデアではありませんが(RAM)、通常のファイルの場合、I / Oが少ないので高速だと思います。
  3. この投稿へのコメントに示されているように、2つのwithステートメントをネストする代わりに、同じ行で実行できることに注意してください

    open( 'C:/test/test.csv'、 'r')をcsvinputとして、open( 'C:/test/output.csv'、 'w')をcsvoutputとして:

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Pythonで出力ファイルに新しい列を追加するにはどうすればよいですか?

分類Dev

Pythonを使用してCSVファイルに新しい列を追加するにはどうすればよいですか?

分類Dev

列の新しいリストを削除して.csvファイルに追加するにはどうすればよいですか?

分類Dev

CSVファイルに新しい行を挿入するにはどうすればよいですか?

分類Dev

ファイルの行間に新しい行を追加するにはどうすればよいですか?

分類Dev

bashのファイルに新しい行を追加するにはどうすればよいですか?

分類Dev

ファイルに新しい行を追加するにはどうすればよいですか?

分類Dev

既存のファイルに新しい行を追加するにはどうすればよいですか?

分類Dev

複数のCSVファイルを追加し、Pythonでファイル名を示す列を追加するにはどうすればよいですか?

分類Dev

nodejs json2csvの既存のcsvファイルに新しい行を追加するにはどうすればよいですか?

分類Dev

ファイル名を列として追加してCSVファイルをSnowflakeに一括ロードするにはどうすればよいですか?

分類Dev

PowerShellスクリプトを使用してCSVファイルの先頭に新しい行を追加するにはどうすればよいですか?

分類Dev

PythonでCSVファイルに新しいデータ行を追加するにはどうすればよいですか?

分類Dev

新しく作成したcsvファイルの列から追加するにはどうすればよいですか?

分類Dev

新しいファイルをファイル全体ではなく部分的にgitに追加するにはどうすればよいですか?

分類Dev

既存のExcelファイルの新しい列にデータ(Pythonリスト)を追加するにはどうすればよいですか?

分類Dev

複数の.csvファイルを読み込み、マージして新しい列を作成するにはどうすればよいですか?

分類Dev

csvファイルで列を個別の列に分割するにはどうすればよいですか?

分類Dev

cat、sed、awk、またはcutを使用してcsvファイルの特定の位置に列を追加するにはどうすればよいですか?

分類Dev

既存のcsvファイルに文字を追加するにはどうすればよいですか?

分類Dev

JMeter CSV出力ファイルに変数名を追加するにはどうすればよいですか?

分類Dev

csvからのScrapy出力に新しい列を追加するにはどうすればよいですか?

分類Dev

Pythonでシート名としてcsvファイル名を使用して「a.csv」ファイルを既存のExcelファイル「b.xlsx」に新しいシートとして追加するにはどうすればよいですか?

分類Dev

新しいファイルをGitHubにプッシュするにはどうすればよいですか?

分類Dev

Django:PDFファイルを新しいタブに表示するにはどうすればよいですか?

分類Dev

Pythonパンダを使用してファイル名を読み取り、その名前をcsvファイルの新しい列に追加するにはどうすればよいですか?

分類Dev

CSVファイルをJavaで整数配列に変換するにはどうすればよいですか?

分類Dev

Pythonでcsvファイルの行を列に分割するにはどうすればよいですか?

分類Dev

Linuxで.txtファイルの最後に列を追加するにはどうすればよいですか?

Related 関連記事

  1. 1

    Pythonで出力ファイルに新しい列を追加するにはどうすればよいですか?

  2. 2

    Pythonを使用してCSVファイルに新しい列を追加するにはどうすればよいですか?

  3. 3

    列の新しいリストを削除して.csvファイルに追加するにはどうすればよいですか?

  4. 4

    CSVファイルに新しい行を挿入するにはどうすればよいですか?

  5. 5

    ファイルの行間に新しい行を追加するにはどうすればよいですか?

  6. 6

    bashのファイルに新しい行を追加するにはどうすればよいですか?

  7. 7

    ファイルに新しい行を追加するにはどうすればよいですか?

  8. 8

    既存のファイルに新しい行を追加するにはどうすればよいですか?

  9. 9

    複数のCSVファイルを追加し、Pythonでファイル名を示す列を追加するにはどうすればよいですか?

  10. 10

    nodejs json2csvの既存のcsvファイルに新しい行を追加するにはどうすればよいですか?

  11. 11

    ファイル名を列として追加してCSVファイルをSnowflakeに一括ロードするにはどうすればよいですか?

  12. 12

    PowerShellスクリプトを使用してCSVファイルの先頭に新しい行を追加するにはどうすればよいですか?

  13. 13

    PythonでCSVファイルに新しいデータ行を追加するにはどうすればよいですか?

  14. 14

    新しく作成したcsvファイルの列から追加するにはどうすればよいですか?

  15. 15

    新しいファイルをファイル全体ではなく部分的にgitに追加するにはどうすればよいですか?

  16. 16

    既存のExcelファイルの新しい列にデータ(Pythonリスト)を追加するにはどうすればよいですか?

  17. 17

    複数の.csvファイルを読み込み、マージして新しい列を作成するにはどうすればよいですか?

  18. 18

    csvファイルで列を個別の列に分割するにはどうすればよいですか?

  19. 19

    cat、sed、awk、またはcutを使用してcsvファイルの特定の位置に列を追加するにはどうすればよいですか?

  20. 20

    既存のcsvファイルに文字を追加するにはどうすればよいですか?

  21. 21

    JMeter CSV出力ファイルに変数名を追加するにはどうすればよいですか?

  22. 22

    csvからのScrapy出力に新しい列を追加するにはどうすればよいですか?

  23. 23

    Pythonでシート名としてcsvファイル名を使用して「a.csv」ファイルを既存のExcelファイル「b.xlsx」に新しいシートとして追加するにはどうすればよいですか?

  24. 24

    新しいファイルをGitHubにプッシュするにはどうすればよいですか?

  25. 25

    Django:PDFファイルを新しいタブに表示するにはどうすればよいですか?

  26. 26

    Pythonパンダを使用してファイル名を読み取り、その名前をcsvファイルの新しい列に追加するにはどうすればよいですか?

  27. 27

    CSVファイルをJavaで整数配列に変換するにはどうすればよいですか?

  28. 28

    Pythonでcsvファイルの行を列に分割するにはどうすればよいですか?

  29. 29

    Linuxで.txtファイルの最後に列を追加するにはどうすればよいですか?

ホットタグ

アーカイブ