2017-11-25 66 views
0

我已經使用熊貓.to_csv函數序列化了一個pivotTable對象。現在我想將它加載回pivotTable對象。熊貓 - 將矩陣樣式csv直接加載到可樞軸轉動的對象

的CSV看起來像這樣,第一列和行是ID的

 49033 49967 50221 52301 
41619    
41665    
46217    
46291 0.002   
47749    
49033   0.001   0.006 
49967     0.03 
50221    

據我所知,大熊貓不具有能爲我做到這一點的任何功能。我必須自己解析整個桌子嗎?

+0

什麼是你寫'csv'代碼?你指定分隔符? – jezrael

+0

不,我沒有,但是這不是一個問題,我可以使用pd.read_csv()函數,我的問題是,它返回數據框對象輕鬆地閱讀我的文件,我需要得到的數據透視表對象 –

+0

'透視object'?在熊貓中它不存在。 – jezrael

回答

2

使用pd.read_fwf()如果您有固定寬度格式的文件。

演示:

In [28]: fn = r'D:\temp\.data\1.fwf' 

In [29]: pd.read_fwf(fn).fillna('') 
Out[29]: 
    Unnamed: 0 49033 49967 50221 52301 
0  41619 
1  41665 
2  46217 
3  46291 0.002 
4  47749 
5  49033   0.001  0.006 
6  49967    0.03 
7  50221 

如果你有一個常規CSV文件 - 使用pd.read_csv()

演示:

In [32]: pd.read_csv(fn, index_col=0).fillna('') 
Out[32]: 
      49033  49967  50221  52301  53627  53733  53779  54095  54871  55059  55921 \ 
41619 
41665                  0.00631642 
46217 
46291 0.00256985                0.0134134 
47749                0.0148866 
49033    0.00188816    0.00680558 0.00155183    0.00735491    0.00293469 0.0028227 
49967       0.0318261 
50221 
52301 
52465 
52621                              0.165127 
52851 
53407                0.0289802 
53437 
53627 
53733 
53779                     0.0311593 
53955 
54065 

      56007  56163  56287 
41619 
41665 0.0374982    0.0125017 
46217 
46291 
47749 
49033    0.00318618 
49967 
50221 
52301 
52465 
52621 
52851 
53407 
53437 
53627 
53733 
53779       0.00455196 
53955 
54065       0.0274595 
+0

我有CSV文件,但函數read.csv()返回對象類型pandas.core.frame.DataFrame,但我的csv是矩陣格式,有沒有什麼辦法告訴熊貓威脅它像矩陣樣式數據並返回數據透視表? –

+0

@MiroHascic,你能提供一個小樣本數據集(類似於你的CSV文件)和你想要的數據集在你的問題? – MaxU

+0

我的csv文件中的數據樣本處於原始問題 –