2017-05-24 7 views
0

私はpandas.DataFrameを持っています。私は最後の列の値だけに興味があります。パンダの特定の列の形状を処理する

np.shape(dataframe.iloc[:,:]) # the output is (2190,460) 
# Now here is the shape of one cell in the last column 

np.shape(dataframe.iloc[0,-1]) # the output is (20,) 

dataframe.iloc[0,-1] # the output [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] 

私の質問は、この列には、次の形で保存され得ることができる方法である:実行しているので、(2190, 20)

np.shape(dataframe.iloc[:,-1]) # the output (2190,) 

そして、この形状は、私にAを使用して巨大な問題

ソリューションを引き起こしていますループ:

Test_Labels = [] 
for i in range(len(dataframe)): 
    Test_Labels.append(dataframe.iloc[i,-1]) 
np.shape(Test_Labels) 

誰かがパンダの機能を使って解決できれば、それを見てうれしいです。

+0

'データフレーム[dataframe.columnsは[-1]]' –

+0

@StephenRauchあなたはそれをテストしたのですか? – Engine

+0

小さな(2x2)データフレーム上。 –

答えて

0

あなたはpandas.DataFrameなどから、最後の列を取得することができます。

コード:

df[df.columns[-1]] 

テストコード:

df = pd.DataFrame({"a": [dt.datetime(2017, 1, 3), 
         dt.datetime(2017, 2, 4), 
         dt.datetime(2017, 3, 5)], 
        "b": [[2, 4], [6, 8], [10, 12]]}) 

print(df) 
print(df[df.columns[-1]]) 

結果:

  a   b 
0 2017-01-03 [2, 4] 
1 2017-02-04 [6, 8] 
2 2017-03-05 [10, 12] 

0  [2, 4] 
1  [6, 8] 
2 [10, 12] 
Name: b, dtype: object 

は、しかし、私は配列ではないリスト

あなたは配列の配列に、リスト配列を変換する必要がある場合の配列として結果を必要とし、その後に全体をキャストnumpy.array、numpyは内部のリストを配列に変換して変換します。

last_col = np.array(list(df[df.columns[-1]])) 
print(last_col) 
print(last_col.shape) 

結果:

[[ 2 4] 
[ 6 8] 
[10 12]] 

(3, 2) 
+0

あなたの返事に感謝しています私はそれらを読んでいる間に私が得る形についての質問は、列にアクセスすることができます! – Engine

+0

まあまあ私はあなたの質問を理解できませんでした... MCVEの作成を試してみてください.... –

+0

申し訳ありませんが、私が持っているコードは大きすぎて問題にはいかず、どうすれば問題を解決できるかわかりませんより明確に! – Engine

関連する問題