2017-09-17 30 views

回答

0

用正則表達式分隔符調用read_csv

df = pd.read_csv(buf, delimiter='\s*,\s*(?=\()', engine='python') 
df 
    (DATA) (DATA2) (DATA3) 
0 (1) (2,3)  (4) 

現在,從列剝離括號:

df.columns = df.columns.str.replace('[()]', '') 
df = df.replace('[()]', '', regex=True) 
df 

    DATA DATA2 DATA3 
0 1 2,3  4 

DATADATA3現在可以轉換到使用astype(float)數字列。對於DATA2,你可以調用str.split並將其轉換成列的列表:

df['DATA2'].str.split(',') 
0 [2, 3] 
Name: DATA2, dtype: object 
+0

完美的作品!非常感謝你 –