大文字のExcelスプレッドシートは、日付が%m/%d/%Y
であります。 Rでは、私はas.Date
を使って日付形式を変換します。問題は、私は私を与えるであろう機能which(dataframe$colname_X<1900)
を使用することができ、214は個々の列については、2014年データセルが正しく変換されていないことを確認しました
...
235 2014-01-20
236 2014-03-03
237 2014-01-24
238 2014-03-07
239 214-05-23
240 2014-01-31
241 2014-02-19
242 2014-03-27
...
の代わりに入力された場合についてExcelで日付のいくつかは、手動手段として、たとえば、誤って入力されたということです行番号。私はすでにそれがどの列であるか知っているので、これは簡単です。
私の質問は、データフレーム全体に同じことをすることができます。その結果、不良セルの行番号と列番号の両方を取得できますか。以降で
あなたは、日付の複数の列を持っているのですか?もしそうなら、あなたは 'apply'を使って全ての列に対してどの関数を実行できるのでしょうか?例えば'apply(df、2、function(x)which(x <1900))'これは、各列に対応する結果のリストをエラーのあるインデックスとともに返します。 – jalapic
@jalapicありがとう、これは私が探していたものです。唯一のわずかな不都合は、日付が正しく入力されたときに 'integer(0) 'という出力を持つすべての列の名前を返すことです。例えば、上記の例では間違ったエントリがあった場合は' [1] 239'です。それは素晴らしいですが、実際に大量のカラムがあった場合、この出力が煩雑になることがあります。 – Oposum
列の順序を保持する必要があります。だから、この 'mycolnames < - colnames(df)'のような元の列名を保存しておけば、正しいデータを持っているときにこの 'colnames(df)<-mycolnames' – jalapic