2015-04-25 221 views
6

我用read_csv命令下面下列:不同read_csv index_col =無/ 0 /假在熊貓

In [20]: 
    dataframe = pd.read_csv('D:/UserInterest/output/ENFP_0719/Bookmark.csv', index_col=None) 
    dataframe.head() 
    Out[20]: 
    Unnamed: 0 timestamp url visits 
    0 0 1.404028e+09 http://m.blog.naver.com/PostView.nhn?blogId=mi... 2 
    1 1 1.404028e+09 http://m.facebook.com/l.php?u=http%3A%2F%2Fblo... 1 
    2 2 1.404028e+09 market://details?id=com.kakao.story 1 
    3 3 1.404028e+09 https://story-api.kakao.com/upgrade/install 4 
    4 4 1.403889e+09 http://m.cafe.daum.net/WorldcupLove/Knj/173424... 1 

結果表明Unnamed:0柱和當我用index_col=False它是呈三角,但是當我使用index_col=0,所述結果如下如下:

dataframe = pd.read_csv('D:/UserInterest/output/ENFP_0719/Bookmark.csv', index_col=0) 
dataframe.head() 
Out[21]: 
timestamp url visits 
0 1.404028e+09 http://m.blog.naver.com/PostView.nhn?blogId=mi... 2 
1 1.404028e+09 http://m.facebook.com/l.php?u=http%3A%2F%2Fblo... 1 
2 1.404028e+09 market://details?id=com.kakao.story 1 
3 1.404028e+09 https://story-api.kakao.com/upgrade/install 4 
4 1.403889e+09 http://m.cafe.daum.net/WorldcupLove/Knj/173424... 1 

結果卻顯示列Unnamed:0,在這裏我要問,是什麼index_col=Noneindex_col=0之間,以及的區別,我已閱讀this中的文檔,但我仍然不明白。

+0

我想你「Unamed的原因:0'是因爲你以csv第一線是這樣的:',時間戳,網址訪問',所以索引列是空白的 – EdChum

回答

6

UPDATE

我想既然0.16.1版本,如果你試圖通過一個布爾爲index_col避免這種模糊性

ORIGINAL

很多人現在它將引發錯誤被這個弄糊塗了,爲了指定你的列的順序索引,你應該在這種情況下通過int位置0,讓人困惑的是當n o索引欄他們通過False這是不正確的,他們應該通過NoneFalse將評估爲0因此您觀察到的結果。

In [3]: 

import io 
import pandas as pd 
t="""index,a,b 
0,hello,pandas""" 
pd.read_csv(io.StringIO(t)) 
​ 
Out[3]: 
    index  a  b 
0  0 hello pandas 

默認值爲index_col=None,如上所示。

如果我們設置index_col=0我們明確說明治療的第一列的索引:

In [4]: 

pd.read_csv(io.StringIO(t), index_col=0) 
Out[4]: 
      a  b 
index    
0  hello pandas 

如果我們經過index_col=False我們得到相同的結果如上由於False評估對0

In [5]: 

pd.read_csv(io.StringIO(t), index_col=False) 
Out[5]: 
    index  a  b 
0  0 hello pandas 

如果我們現在狀態index_col=None我們得到相同的行爲時,我們並沒有通過這個PARAM:

In [6]: 

pd.read_csv(io.StringIO(t), index_col=None) 
Out[6]: 
    index  a  b 
0  0 hello pandas 

編輯

對於您有一個空白索引列的情況下,這是你擁有的一切:

In [7]: 

import io 
import pandas as pd 
t=""",a,b 
0,hello,pandas""" 
pd.read_csv(io.StringIO(t)) 
​ 
Out[7]: 
    Unnamed: 0  a  b 
0   0 hello pandas 
In [8]: 

pd.read_csv(io.StringIO(t), index_col=0) 
Out[8]: 
     a  b 
0 hello pandas 
In [9]: 

pd.read_csv(io.StringIO(t), index_col=False) 
Out[9]: 
    Unnamed: 0  a  b 
0   0 hello pandas 
In [10]: 

pd.read_csv(io.StringIO(t), index_col=None) 
Out[10]: 
    Unnamed: 0  a  b 
0   0 hello pandas