2016-04-22 22 views
0

edxから「rへの紹介」を行っていて、何かを理解していません。 これは私のデータフレームと呼ばれるplanets_dfです:データフレーム要素の選択

 name    type diameter rotation has_rings 
    1 Mercury Terrestrial planet 0.382 58.64  FALSE 
    2 Venus Terrestrial planet 0.949 -243.02  FALSE 
    3 Earth Terrestrial planet 1.000  1.00  FALSE 
    4 Mars Terrestrial planet 0.532  1.03  FALSE 
    5 Jupiter   Gas giant 11.209  0.41  TRUE 
    6 Saturn   Gas giant 9.449  0.43  TRUE 
    7 Uranus   Gas giant 4.007 -0.72  TRUE 
    8 Neptune   Gas giant 3.883  0.67  TRUE 

と私は三行目「地球」のための直径と回転列から要素を選択します。

それは私を与える:

diameter rotation 
NA  NA  NA 

しかし、私は理解していない私は、しかし、私はまたして、その行を選択すると考えていた私は

earth_data <- planets_df[3,c("diameter", "rotation")] 

によってこれを行うことができます知っていますこれはなぜですか、あなたは名前で列を選択できるので、同じ方法で行を選択することもできると思いました。誰かがなぜこれが私に説明できますか?

答えて

1

あなたのコード内の問題はここにある:あなたが欲しい

は、「名前」欄に「地球」を持っているすべての行を取得することです。 これをすることによって実現されていますので、フルラインは次のようになり

planets_df[planets_df[,"name"] =="Earth",] 

earth_data <- planets_df[planets_df[,"name"]=="Earth",c("diameter", "rotation")]