2016-11-25 12 views
1

.csvファイルからデータを読み取るためにpandasモジュールを使用しています。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列に存在する値を抽出するために、私はこのような何か書くことができる必要があります:0から

df([100][50]) 

答えて

3

使用DataFrame.ilocまたはDataFrame.iatが、Pythonのカウントを、そう99を必要としますセレクト100.行の4950.カラム:

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.ilocまたはSeries.iatによって可能です:

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

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

ありがとうございました。希望通りに動作する –

+0

さらに、df変数からの列の総数を調べるにはどうすればよいですか? –

+1

あなたは 'len(df.columns)'と思いますか? – jezrael

1

パンダは、データフレームのためのインデックスを持っているので、あなたは

df.iloc[[index]]["column header"] 
を使用することができます

このようにインデックスに複数のインデックスを渡すことができるので、インデックスはリストにあります。

関連する問題