2016-05-15 52 views
0

我已經爲列和索引構造了一個具有整數值的矩陣。該矩陣每個月都是非常分層的。我的問題是,當我將數據寫入csv然後作爲熊貓數據框加載時,索引和數據選擇不再像以前那樣工作。之前寫和讀數據將列名轉換爲帶有read_csv的整數

選擇數據保存到文件:

matrix.ix[1][4][3]將例如給123

在選擇的話,月月給我拿的(旅遊)從原點4流向目的地3.

寫入和讀取的數據以CSV和回大熊貓後,原來的引用失敗,但如果我列索引轉換爲字符串,它的工作原理:

matrix.ix[1]['4'][3] 

...列名已自動從整數轉換爲字符串。但我更喜歡原始索引。 有什麼建議嗎?

我現在速戰速決從CSV樣之後,處理的數據是:

#Writing df to file 
mulitindex_df_Travel_monthly.to_csv(r'result/Final_monthly_FlightData_countrylevel_v4.csv') 


#Loading df from csv 
test_matrix = pd.read_csv(filepath_inputdata+'/Final_monthly_FlightData_countrylevel_v4.csv', 
             index_col=[0, 1]) 


test_matrix.rename(columns = int, inplace = True) #Thx, @ayhan 

CSV文件: https://www.dropbox.com/s/4u2opzh65zwcn81/travel_matrix_SO.csv?dl=0

example df

+0

可以共享CSV的幾行,你怎麼看呢? – ayhan

+0

我添加了我用來保存數據並將其重新載入熊貓的代碼。我只是指定index_col。但至少還有一個小問題。一旦加載它,我的空行添加了一個名爲「Unnamed:1」的空行。 –

+0

添加其他參數:'header = None,skiprows = 1' – Parfait

回答

0

我以前是這樣的:

df = df.rename(columns={str(c): c for c in columns})

其中:

df是大熊貓數據框和列列改變