2017-08-01 135 views
1

我已經從機器學習存儲庫下載了一個數據集(.data),並將其保存爲cvs文件。然後我用pandas閱讀:熊貓 - 格式化csv文件將列名添加到列

dataset = pd.read_csv('mileage.csv') 

它打印像這樣:

enter image description here

,但現在我需要添加(命名)columns的數據,我試圖用做:

dataset = pd.read_csv('mileage.csv', names=["mpg", "cylinders", "displacement", "horsepower", "weight", "acceleration", "model year", "origin", "car name"]) 

這一點,但是,打印:

enter image description here

,所有數據被擠壓成一列...

我要補充「逗號」,以cvs數據第一?

如何正確預處理這些數據,每列的每個數據?

+0

檢查出'pd.read_csv' – jacoblaw

回答

1

您可以使用assign來初始化新列。看起來有些列已經在原始數據中,所以我將使用有條件的字典理解來僅獲得新的數據。

new_cols = ["mpg", "cylinders", "displacement", "horsepower", "weight", "acceleration", "model year", "origin", "car name"] 

dataset = pd.read_csv('mileage.csv') 
dataset = dataset.assign(**{c: None for c in new_cols if c not in dataset}) 

直接訪問一些樣本數據:

import urllib2 

url = 'https://raw.githubusercontent.com/chrisjameskirkham/car-mpg/master/auto-mpg-nameless.csv' 
response = urllib2.urlopen(url) 
dataset = pd.read_csv(response).assign(**{c: None for c in new_cols if c not in dataset}) 
+0

錯誤仍然存​​在...列創建的,但所有的數據都在'哩擠壓'sep'參數'列... – outkast

+0

也許文件不是用逗號分隔的。 – Alexander

+0

是的,我已經指出,在閱讀之前是否有一種用逗號分開的方法? – outkast