1

同じ化石期日 (育成日) の "dam1" 列と "dam2" 列に表示されるダムを除外する新しいデータ フレームを作成する必要があります。試してみdf <- df[df$dam1!=df$dam2,]ましたが、うまくいきませんでした。Dam1 と dam2 は母の id である要因です。

私のDF:

fosdate      dam1     dam2
8/09/2009    2Z523    2Z523
30/10/2009   1W509    5C080
30/10/2009   1W509    5C640
30/10/2009   1W509    1W509
1/10/2009    1W311    63927

取得する必要がある新しいデータ フレームは次のとおりです: dfnew:

fosdate      dam1     dam2
30/10/2009   1W509    5C080
30/10/2009   1W509    5C640
1/10/2009    1W311    63927

助けていただければ幸いです!

バゾン

4

3 に答える 3

3

問題は、dam1 と dam2 がそれぞれ異なる水準数を持つ因子であることです。これを回避するには、要素を「文字」に変換して比較する必要があります。

dfnew <-df[as.character(df$dam1) != as.character(df$dam2), ]
于 2010-05-20T23:14:24.747 に答える
0

私の推測では、データをインポートしたときに df$dam1 と df$dam2 が要因になりました

これは次の方法で確認できます

is.factor(df$dam1)

これがTRUEの場合は、次のようなものを試してください

df[as.character(df$dam1) != as.character(df$dam2),]
于 2010-05-20T23:07:16.773 に答える
-1

Rを使用している可能性があるという考えに基づくワイルドな推測(他の質問はRに関するものであるため)。私はRを知らないことに注意してください。他の質問と回答から2と2をまとめているだけです。

試す

df <- df[df$dam1 != df$dam2,]

つまり、比較節の両側で明示的に df$ を指定します。

于 2010-05-20T01:44:07.980 に答える