2016-11-25 93 views
1

我正在使用pandas模塊來讀取.csv文件中的數據。如何在python中使用pandas讀取csv文件的所有行?

我可以寫出下面的代碼以提取屬於一個單獨的列中的數據如下:

import pandas as pd 

df = pd.read_csv('somefile.tsv', sep='\t', header=0) 
some_column = df.column_name 
print some_column # Gives the values of all entries in the column 

但是,我想讀現在有超過5000列,寫出來的文件聲明

some_column = df.column_name 

現在不可行。我如何獲得所有列值,以便可以使用索引訪問它們?

例如,爲提取存於第100行和第50列中的值,我應該能夠編寫這樣的事:

df([100][50]) 

回答

3

使用DataFrame.ilocDataFrame.iat,但蟒蛇計數從0,因此需要9949的選擇100.行和列50.

df = df.iloc[99,49] 

樣本 - 選擇3.4.柱:

df = pd.DataFrame({'A':[1,2,3], 
        'B':[4,5,6], 
        'C':[7,8,9], 
        'D':[1,3,10], 
        'E':[5,3,6], 
        'F':[7,4,3]}) 

print (df) 
    A B C D E F 
0 1 4 7 1 5 7 
1 2 5 8 3 3 4 
2 3 6 9 10 6 3 

print (df.iloc[2,3]) 
10 

print (df.iat[2,3]) 
10 

組合由列名和行的位置選擇,可以通過Series.ilocSeries.iat

print (df['D'].iloc[2]) 
10 

print (df['D'].iat[2]) 
10 
+0

謝謝。根據需要運行 –

+0

此外,如何找出df變量的列總數? –

+1

你認爲'len(df.columns)'? – jezrael

1

大熊貓有dataframes索引,所以你可以使用

df.iloc[[index]]["column header"] 

索引位於列表中,因爲您可以通過這種方式在一個索引處傳遞多個索引。