2017-05-31 25 views
-1

我有兩列,我試圖分開,首先我擺脫了任何有Jr和II,它的作品,然後我想分開名稱到一個單獨的選項卡如何將csv導出爲3列而不是2?

我有2個選項卡: 位置號碼,名稱

XXX-XXX-XXXX-XXX, 「BLOOM,DANIEL」 ,,

想的名稱由名字和姓氏在2分單獨的列

輸出被分離3個獨立標籤:

PositionNumber,姓,名

XXX-XXX-XXXX,BLOOM,DANIEL

import csv 
import pandas as pd 

s = open('C:\\HR employees\\Listing.csv','r').read() 

chars = ('$','%','^','*','JR','II') 
for c in chars: 
    s = ''.join(s.split(c)) 
out_file = open('myfile_new.csv','w') 
out_file.write(s) 
out_file.close() 

with open('myfile_new.csv','r') as csvfile: 
    reader = csv.reader(csvfile, delimiter=',', quoting=csv.QUOTE_NONE) 
    for row in reader: 
     print(row) 

csvfile = open('myfile2_new.csv','w') 
out_file.write 
out_file.close() 

回答

0

假設我有:

$ cat file.csv 
PositionNumber, LastName, FirstName 
XXX-XXX-XXXX, "BLOOM, DANIEL" 

你可以這樣做:

with open('/tmp/file.csv') as csvfile: 
    r=csv.reader(csvfile) 
    for row in r: 
     row=[e.strip().strip('"') for e in row] 
     print(row) 
['PositionNumber', 'LastName', 'FirstName'] 
['XXX-XXX-XXXX', 'BLOOM', 'DANIEL'] 

的默認的csv是不加引號的。只需處理空格,然後"與列表理解中的兩個strip陳述。

+0

我該如何將其保存到csv文件? – davidjbeiler

+0

打開一個文件和一個'csv.writer',並在讀入時寫出...閱讀[csv模塊](https://docs.python.org/3/library/csv.html)docs – dawg

+0

不做我想要的,名字格式仍然是'BLOOM,DANIEL'而不是'BLOOM','DANIEL' – davidjbeiler