問題タブ [posixct]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - Rで時刻形式を数値に変換する
ほとんどの場合、R を使用して数値時刻を POSIXct 形式に変換します。ただし、2 つの時点を比較する場合は、数値時刻形式を優先します。たとえば、「2001-03-13 10:31:00」のような日付形式があります。
R を使用して、これを数値 (ユリウス時間など) に変換したいと考えています。たとえば、1970 年 1 月 1 日 00:00:00 から 2001 年 3 月 13 日 10:31:00 までの経過秒数などです。
何か提案はありますか?
ユリウス暦は紀元前 45 年 (709 AUC) にユリウス・カエサルによるローマ暦の改革として始まりました。これは、アレクサンドリアの天文学者ソシゲネスとの協議の後に選ばれ、おそらく熱帯年に近似するように設計された (少なくともヒッパルコス以来知られている)。http://en.wikipedia.org/wiki/Julian_calendarを参照
r - 次のデータを使用して、R で顧客のスーパーマーケットで過ごした時間を見つける方法は?
私はそのようなタイプのデータを持っています:
このデータは、特定の日時にスーパーマーケットを訪れた顧客を示しています。顧客は ID によって識別され、ステータスも指定されます。
顧客が異なる日にスーパーマーケットで過ごした時間を計算したいと考えています。私がデータに関して抱えている問題は、一部の顧客については、入場時間または退場時間のみが記録されることです。1 回訪問した顧客をクリアしましたが、in または out ステータスが欠落していますが、複数回訪問し、in/out が欠落している顧客がまだいくつかあります。
私はこれを試しました
そして、私はこのエラーを受け取ります: as.POSIXct.default(time1) のエラー: 'time1' をクラス "POSIXct" に変換する方法がわかりません
私のコードまたは代替ソリューションを修正する方法を知っている人はいますか? 前もって感謝します!
r - seq() を使用して、日時の規則的なシーケンス (POSIXct) を作成します。
私の目標は、開始、終了、およびデルタ (15 分、1 時間、1 日) を指定して、POSIXct タイム スタンプのベクトルを作成することです。これに使用できることを望んでいseq
ましたが、数値と POSIXct 表現の間の変換に問題があります。
この変換中に 1 時間が失われます。私は何を間違っていますか?
r - PosixCt のデフォルトの軸フォーマット
plot
POSIXct ラベルを使用するとき、およびそれらがデータフレームの一部であるときに (Date HH:MM
単に ではなく) POSIXct ラベルがどのように表示されるかのデフォルト形式を変更する方法はありますHH:MM
か?
axis
毎回コマンドを発行したり、データフレームをオブジェクトに変換したりせずにこれを行うことができればいいのにと思いxts
ます。
r - POSIXct: as.POSIXct("2008-03-30 02:00:00",format="%Y-%m-%d %H:%M:%S") が失敗する R のバグですか?
POSIXct への変換中に非常に奇妙なことが起こります。
しかし:
私は無知です。Rのバグですか?私のドイツ語 (ベルリン) ロケールと関係があるのでしょうか? WindowsにR 2.14.2を使用しています。
r - POSIXctから時間を抽出する
POSIXct
日付部分を破棄する一連のオブジェクトから時間を抽出するにはどうすればよいですか?
たとえば、私は持っています:
これらの日付に対応します:
今、私はそれらの時に測定されたパラメータのいくつかの値を持っています:
valが測定された特定の日に関係なく、valと時刻をプロットしたいと思います。
それを可能にする特定の機能はありますか?
r - 文字列の潤滑
文字ベクトルを POSIXct オブジェクトに変換したいのですが、これを達成するのに苦労しています
日付には潤滑dmy
機能を使用できますが、時間と組み合わせるのに苦労しています
r - data.frame の行ごとに異なる列を取得する
任意の数の列がdata.frame
あり、各行から異なる列 (1 つだけ) を取得する方法が必要です。たとえば、次のdata.frame
ようなものがある場合:
a、g、c、W、V の文字を取得します。
これがあれば、matrix
簡単に解決できます。
しかし、データは a であるdata.frame
ことが多く、それらのPOSIXlt
a を に変換する方法が見つからないため、データを a に格納する必要があります。data.frame
matrix
行ごとにループせずにこれを行う良い方法はありますか? 喜んで共有したい失敗した試みがたくさんあります。
string - Rは準標準文字列から時間成分を抽出します
設定
データフレームに文字列として保存された期間の列があります。それらを適切な時間オブジェクト、おそらくPOSIXltに変換したい。ほとんどの文字列は、このメソッドを使用して簡単に解析できます。
欠落している期間はコード化され"--"
ており、変換する必要がありNA
ます。これは既に発生していますが、保持する必要があります。
課題は、文字列がゼロ値の要素を削除することです。したがって、目的の値2012-01-01 02:00:14
は string になります"1 d 2 h 14 s"
。ただし、この文字列はNA
単純なパーサーで解析されます。
質問
- 可能なすべての文字列形式を処理する「R Way」とは何ですか? おそらく、各要素を個別にテストして抽出してから、再結合しますか?
- POSIXlt は適切なターゲット クラスですか? 特定の開始時刻から自由な期間が必要なため、誤った年と月のデータ (
2012-01-
) を追加するのは面倒です。
解決
@mplourde は、日付形式のさまざまな条件のテストに基づいて、書式設定文字列を動的に作成することで、間違いなく正しい考えを持っていました。cut(Sys.Date(), breaks='years')
のベースラインとしてのの追加datediff
も良かったのですが、as.POSIXct()
注: R2.11 ベースを使用しています。これは後のバージョンで修正されている可能性があります。
の出力はas.POSIXct()
、日付コンポーネントが含まれているかどうかによって劇的に変化します。
したがって、difftime
関数の 2 番目の引数は次のようになります。
- 入力文字列に日のコンポーネントがある場合、現在の年の最初の日の開始
- 入力文字列に日のコンポーネントがない場合の現在の日の開始
cut
これは、関数の単位パラメーターを変更することで実現できます。
r - all.equal.POSIXct からの予期しない出力
R の all.equal メソッド、特に POSIXct、all.equal.POSIXct の実装から予期しない出力が得られます。
TRUE を返し、
FALSE を返します。
ただし、all.equal.POSIXct の定義を見ると、scale パラメーターのデフォルトが 1 であることがわかります。
all.equal の代わりに all.equal.POSIXct を明示的に呼び出すと、同じ結果が得られます。
all.equal.POSIXct への最初の呼び出しで、デフォルトのパラメーター scale = 1 が取得されないのはなぜですか? 私は何か間違ったことをしていますか、根本的に何かを誤解していますか、それともこれはバグですか?
助けてくれてありがとう。