2017-06-02 8 views
-1

飛行機の事故に関するデータ(事故の日付とその他の情報)があります。私の統計プロジェクトでは、データを分析したいと思います。例えば、私は1995年から2000年の間に3ヶ月間の事故数をプロットしたいと思います。その意味で、その期間に3ヶ月連続して、その時間枠内の事故の数を取得したいと思います。私は3ヶ月のこれらの期間の事故の数をRで最も効果的に得るために、データをさらに操作することができますか?日付を操作するR

また、私のデータがポアソン分布に従っているかどうかを統計的にテストしたいと思います。自分のデータでRの適合度テストを使用できますか?

これまではこれを書いています。

私の考えは、1995年から2000年の間に3ヶ月間のクラッシュ数を表すベクトルを作成することでした。データは日付でソートされ、表の各行は飛行機の1つのクラッシュを表します。

Crash<-read.csv(file="nesrece95-99.csv", header=TRUE, sep=",") 
Datumi=as.Date(Crash$Date,"%m/%d/%Y") 
help(vector) 
broj<-vector(mode="integer", length = 20) 
ind<-integer() 
ind=-1 
god<-integer() 
god=0 
mjesec<-integer() 
mjesec=0 

help(date) 
for(i in 1:length(Datumi)) 
    { 
    if(year(Datumi[i])!=god) 
    { 
    ind=ind+1 
    god=year(Datumi[i]) 
    print(god) 
    mjesec=1 
    } 
    else if(month(Datumi[i]> (mjesec+2))) 
    { 
    ind=ind+1 
    mjesec=month(Datumi[i]) 
    } 
    broj[ind]=broj[ind]+1 
} 

それは私にエラーを与える:

Error in as.POSIXlt.default(x, tz = tz(x)) : 
    do not know how to convert 'x' to class “POSIXlt” 

しかし、私は正確に問題が何であるかを知りません。私はこれらの図書館を後でもっと徹底的に勉強します。私はRの新人ですが、私はそれを私のプロジェクトに使う必要があります。

+1

こんにちはドロテア、仕事を始めるためにこれまで行ってきたことを教えてください - 私たちがあなた自身の試みを拡張するのを助けることを可能にするために、最初からあなたを始めることはできません。また、実行可能なコードで再現可能なサンプルを残しておくと便利です(独自のデータフレームコードを作成してサンプルを再作成する必要はありません)。詳細はこちら:https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example – Joy

+1

RでのPOSIXct、POSIXlt、およびlubridateのドキュメントを見てください。 –

+0

@Joy Rでのコーディングについて実際にはあまり知らないので、私は最初から詰まっていました。すべて、私は後でそれをテストし続けるために、クラッシュ数のこのベクトルを取得する必要があります。もし誰かが私のためにそれを解決してくれるように思えば、私はお詫びします。 – Waddles

答えて

0

私はあなたのデータからの印象がないので、私は推測することができますが、3ヶ月の期間でデータをグループ化することは意味がありますか? dplyr - パッケージ(look at the cheat sheet here)には、それぞれの3か月間を指定して事故の数を要約できるグループ化機能が用意されています。