-1

アトミック ベクトルがあり、スコアが 20% を超えるすべての行を除外したいと考えています。データは次のようになります。

                 Gain
ch1_500001  0.0000000
ch1_1500001 0.0000000
ch1_2500001 0.3157895
ch1_3500001 0.1578947
ch1_4500001 0.1578947
ch1_5500001 0.1578947

なのでch1_2500001を選択してもらいたいです。

私はいくつかのオプションを試しました:

freqsnormg<- freqsnorm==0.20 FALSE のみを与える

freqsnormg<- freqsnorm[,1]==0.20FALSE のみを与える

20% を超える値のみを保持する新しいテーブルを取得する方法。また、論理値を変更しないでください。

4

4 に答える 4

1

試してみる場合data.frame

freqsnormg <- read.table(text='                 Gain
ch1_500001  0.0000000
ch1_1500001 0.0000000
ch1_2500001 0.3157895
ch1_3500001 0.1578947
ch1_4500001 0.1578947
ch1_5500001 0.1578947', header=T)

subset(freqsnormg, Gain>.2)  # above 20%
                 Gain
ch1_2500001 0.3157895

subset(freqsnormg, Gain<.2)  # below 20%
                 Gain
ch1_500001  0.0000000
ch1_1500001 0.0000000
ch1_3500001 0.1578947
ch1_4500001 0.1578947
ch1_5500001 0.1578947
于 2012-11-07T14:39:10.300 に答える
1

あなたの質問は本当に意味がありません.ベクトルという言葉に言及してから、データフレームを表示します.

  1. 次に呼び出されるベクトルの値を除外するfreqsnorm場合:

    freqsnorm[freqsnorm < 0.20]
    
  2. データはdata frameのように見えるため、行を選択するにはコンマが必要です。

    ##Here freqsnorm[,1] selects the first column
    freqsnorm[freqsnorm[,1] < 0.20]
    ##Refer to the column by name
    freqsnorm[freqsnorm$Gain < 0.20]
    

どちらの場合も、角括弧内の部分は論理値のベクトルを示します。つまり、次のようになります。

freqsnorm$Gain < 0.20 

TRUE、TRUE、FALSE などを返します。次に、角括弧を使用して必要な要素を選択します。

于 2012-11-07T14:37:26.150 に答える
1

表示するデータは原子ベクトルではありません(コンポーネントは原子ベクトルである可能性がGain最も高いですが、完全なオブジェクトはそうではありません)。

1 つのオプションは、 を使用することsubset()です。データの使用

df <- read.table(text = "                 Gain
ch1_500001  0.0000000
ch1_1500001 0.0000000
ch1_2500001 0.3157895
ch1_3500001 0.1578947
ch1_4500001 0.1578947
ch1_5500001 0.1578947", header = TRUE)

我々は持っています

> subset(df, Gain > 0.2)
                 Gain
ch1_2500001 0.3157895

これを強制的にベクトルに落とす (つまり、空の次元を緩める) 場合は、

> subset(df, Gain > 0.2)[,1]
[1] 0.3157895
于 2012-11-07T14:42:36.613 に答える
1

20% を超える値を確認するには

freqsnormg<- freqsnorm[freqsnorm[,1]>0.20, ]

20% 未満の値を確認するには

freqsnormg<- freqsnorm[freqsnorm[,1]<0.20, ]
于 2012-11-07T14:36:03.923 に答える