Excelシート内の名前のリスト(csvでも)があり、名前の由来を持つグループを作成しました。正規表現で値をグループ化するregex
これは私が作ったグループのようなものです。
今、私は名前の後ろにグループ名で新しい列を追加したいです。
これは私が入手したいものです。
私はこれをどのように入手できますか?これには正規表現を使用する必要がありますか?
Excelシート内の名前のリスト(csvでも)があり、名前の由来を持つグループを作成しました。正規表現で値をグループ化するregex
これは私が作ったグループのようなものです。
今、私は名前の後ろにグループ名で新しい列を追加したいです。
これは私が入手したいものです。
私はこれをどのように入手できますか?これには正規表現を使用する必要がありますか?
ここでは正規表現は必要ありません。たとえば、Pythonのcsvモジュールを使用することができます。 old.csv
groups,,,
Dutch,Lore,Kilian,Daan
German,Marte,,
USA,Eva,Judith,
使用Pythonスクリプトimport csv
import csv
rows = []
with open('old.csv','r') as old_csv:
old = csv.reader(old_csv, delimiter=',')
old.next()
for row in old:
for name in row[1:]:
if name:
rows.append({'name':name,'group':row[0]})
with open('new.csv','w') as new_cvs:
fieldnames = ['name', 'group']
new = csv.DictWriter(new_cvs, fieldnames=fieldnames)
new.writer.writerow(new.fieldnames)
new.writerows(rows)
new.csv
name,group
Lore,Dutch
Kilian,Dutch
Daan,Dutch
Marte,German
Eva,USA
Judith,USA
xlrdおよびxlwtモジュールを使用することもできますが、標準ではないため、モジュールをインストールする必要があります。
この作品は、ありがとうございます! :) – Papie
あなたはpythonタグを置いていますが、エディション中に削除されています。あなたがPythonでより多くの回答を得たいなら、私はあなたの質問にそれを指定することをお勧めします。 – cromod