2017-12-25 23 views
0

データセットに20の列があり、入力として19を使用したいとします。入力列は1:10と12:20の列です。11番目の列を出力として使用します。パンダを使ってこのような範囲を与える方法は?例えばパンダで複数の列範囲をスライス

Example Data Set

は、それが4列を持つデータの上に考えるが、私は入力にのみ3列を取るために持っていますが、これらの列はB、D、Eをしていると私はC列をスキップしたいです。今すぐ私は 入力= dftrain.loc [:, : 'e'] すべての4つの列を使用しています。

+0

列名と問題によって解決策を提案できるように、コードを貼り付けてください。 – Sam

答えて

1

オプション1
np.r_

idx = np.r_[0:11, 12:20] 

idx 
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 
     18, 19]) 

パスこのilocに -

df.iloc[:, 11] = df.iloc[:, idx].sum(axis=1) # sum, for example 

オプション2
pd.IndexSlice

idx = pd.IndexSlice[0:11, 12:20] 

idx 
(slice(0, 11, None), slice(12, 20, None)) 

idxは、前と同じ方法で使用できます。

+0

ありがとうございました!オプション1は私の場合にはうまくいきます – vineagle

関連する問題