2017-04-17 94 views
1

我開始使用Python中的CSV文件進行工作,我想了解如何正確操作它們。我想了解如何管理大量數據,例如此處找到的CSV文件Sacramento Crime January 2006,有7,548個犯罪記錄。如何從CSV文件創建「乾淨」數據表

基本上我想把它變成一個包含第一行作爲標題(名稱,ID,緯度等)和其下的所有其他值的表。我用這個問題的代碼which is similar to mine but does not work entirely

根據這個問題,我應該有頭,隨後其內容的名稱,但我得到:

{'address': [], 'etc': []} [] 

當我應該得到{{'adress':[]]} ['addresses in CSV file(7k etc)']

而且它是所有在同一行,當我希望它看起來像

Name ID Latitude etc 
John 55 -4.56777 etc 

,而我所有的CSV文件是這樣的:

cdatetime,address,district,beat,grid,crimedescr,ucr_ncic_code,latitude,longitude 
1/1/06 0:00,3108 OCCIDENTAL DR,3,3C  

目前我只處理了鏈接問題的答案中找到的內容,但我一直在努力尋找一種方法。順便說一下,我對Python真的很陌生,就像我剛學過如何打開,讀取,寫入文件等一樣。 也應該使用import pandasimport csv。哪個更好?

+1

我建議你學習一些熊貓。如果你努力尋找某個地方,可以到datacamp或其他教育網站去學習基礎知識。但是,您可以使用read_csv方法使用pandas導入csv文件。 – Aklys

+0

'{['address':[]]} []'不是一個有效的python表達式,你不能得到。 –

+0

@TamasHegedus編輯了這篇文章,我的錯誤,對不起。 – Maiels

回答

1

我找到了解決我的問題。比我想象的要簡單得多,使用的是熊貓。我不知道它對於處理CSV文件非常有用。

import pandas as pd 

path=("path to csv file") 
table= pd.read_csv(path, header='infer', sep=',') 
print(table) 

您可能需要改變你的分離器,並根據您的文件,你可能需要你頭(0infer是默認設置)來更改值。這是下面的結果

cdatetime   adress  district beat etc. 
1/1/06 0:00 3108 OCCIDENTAL DR  3  3C etc.