2017-05-25 8 views
0

主に古い日付のデータフレーム列でNAを置き換えたいとします。R NAをデータフレームの日付列に置き換える - 無効な係数レベルNA生成

私は、スタックオーバーフローの他のポストに基づいて以下のさまざまなバリエーションを試しました - しかし、私は望みの結果を得ることができません。

sales$LatestSaleDate[as.character(sales$LatestSaleDate) == "NA"] <- as.Date("1900-1-1") 

私はエラーを取得する:

invalid factor level, NA generated.

私は実際にここで何が起こっているかのまわりで私の頭を取得することはできません..しかし、私は簡単な回避策があると確信しています。アイデア?

Sku Name CustomList2ID LatestSaleDate LocalStock RemoteStock is_in_stock 
1 sku1 Prd1    0  2017-05-12  -2   -2 out of stock 
2 sku2 Prd2    0  2017-05-22   5   5 in stock 
3 sku3 Prd3    0  <NA>    12   12 in stock 
4 sku4 Prd4    0  2017-05-19  -6   -6 out of stock 
5 sku5 Prd5    0  <NA>    -1   -1 out of stock 
6 sku6 Prd6    0  2017-05-25  33   33 in stock 
+0

あなたが使用する必要があり '代わりにis.na() 'を使用しています。これは、次のようになります。' Sales $ LatestSaleDate [is.na(sales $ LatestSaleDate)] < - as.Date( "1900-1-1") ' – BigDataScientist

+1

[How do私はRのデータフレームでNAの値を0に置き換えますか?](https://stackoverflow.com/questions/8161836/how-do-i-replace-na-values-with-zeros-in-an-r-dataframe) – BigDataScientist

答えて

-1

はこれを使用してみてください -

販売$ LatestSaleDate [is.na(販売$ LatestSaleDate)] < - as.Date( "1900年1月1日")

+0

いいえ - 同じエラーメッセージ 警告 '' < - 。factor'( '* tmp *'、is.na(売上高$ LatestSaleDate)、値= c(180L、: 無効な因子レベル、NAは –

+0

を生成したものは 'LatestSaleDate variable'のように見えます。要因である。これが最初の場合は、 'Date'型に変換する必要があります。次に、上記のコードを実行することができます – Bea

関連する問題