2017-02-09 38 views
1

在我的CSV文件中,每行用分隔符"$$$Field$$$"(簡單字符串,不是正則表達式)分隔。我正在嘗試執行以下操作,但它忽略了分隔符。熊貓:在CSV文件中使用整個字符串作爲分隔符

df = pd.read_csv('filename.csv', sep='\b$$$Field$$$\b') 

任何想法?

+0

它忽略了分隔符,所以它會自動確定這個(並且選擇錯誤的一個標籤) – Arturo

+0

''$$$ $$$'$$$ \ b'這不是有效的Python代碼。 –

回答

3

看來你需要逃避$通過\

import pandas as pd 
from pandas.compat import StringIO 

temp=u"""Food$$$Field$$$Taste 
Apple$$$Field$$$a 
Banana$$$Field$$$b""" 
#after testing replace 'StringIO(temp)' to 'filename.csv' 
df = pd.read_csv(StringIO(temp), sep='\$\$\$Field\$\$\$',engine='python') 
print (df) 
    Food Taste 
0 Apple  a 
1 Banana  b 

read_csv文檔:

:STR,默認爲 '' 爲read_csv(),\ t表示read_table()

要使用的分隔符。如果sep爲None,將會嘗試自動確定這一點。 長度超過1個字符且與'\ s +'不同的分隔符將被解釋爲正則表達式,將強制使用python解析引擎並忽略數據中的引號。正則表達式示例:'\ r \ t'。

相關問題