2017-01-23 55 views
0

如果這個問題聽起來很愚蠢,那麼我很抱歉。我正在合併兩個csv文件,並且合併的csv文件有一個字段,其中包含逗號和該字段中的值。如何在特定字段中的所有值周圍插入引號?在字段中插入引號

import pandas as pd 

first = pd.read_csv('C:/datainput') 
first['project_id'] = 2 
second = pd.read_csv('C:/datainputting') 
second['project_id'] = 1 

merged = pd.concat([first, second], ignore_index = True) 
getting_away = merged.to_csv('C:/datainputcombination.csv', index=False) 

for row in getting_away: 
    row[23] = "'%s'" % row[23] 

print "Data Input all ready to fire" 

錯誤:

Traceback (most recent call last): 
    File "C:/Users/datainputcombo.py", line 14, in <module> 
    for row in getting_away: 
TypeError: 'NoneType' object is not iterable 

行[23]:

AGG Development, LLC 
RRR Regional, PLLC 
RJH Developers, LLC 
.................... 

回答

2

下面是簡單的代碼,演示了發生了什麼。

>>> import pandas as pd 
>>> df = pd.DataFrame({'a':[1,2,3,4],'b':[4,5,6,7]}) 
>>> getting_away = df.to_csv('aFile.csv') 
>>> getting_away 
>>> 

我做一個簡單的數據幀,然後將它作爲你沒有使用.to_csv寫入CSV。此方法的結果存儲在getting_away中,但如您所見,它是None。也就是說.to_csv不會返回任何內容,這很有意義,因爲它已將結果放入文件中。

1

如果您正在運行與逗號字符問題下游寫csv文件,您可以使用此參數打開引用:

merged.to_csv('C:/datainputcombination.csv', quoting=csv.QUOTE_NONNUMERIC)