時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?こんにちは皆さん。
JMP では、LIMS システムから抽出した安定性データを使用しています。 分析を行うとき、X 軸に月単位の時間が表示されます。 抽出されたデータは、2 つの時間「形式」で提供されます。月単位の時間 (「M-12」または「M-36」など) または日単位の時間 (「EOS-968」または「EOS-1011」など) のいずれかです。 )。 すべてのデータは同じ列にあります。
必要な分析を継続して実行できるデータが必要です。 月単位の時間に関しては、通常、「検索と置換」を実行して「M-」を削除し、置換を空のままにします。 日を月に変えるのはもっと大変です。
私自身の最初の考えは、最初に「EOS-」の部分を削除してから、月単位で再計算することでしたが、データはすべて同じ列にあるため、2 つの「データセット」を分離しておくのは難しいと感じています。同じユニット。
この変換をより簡単に行う方法について何か良いアイデアはありますか? 多分小さなスクリプトが必要ですか?
どんな助けでも大歓迎です。
よろしくお願いします
アンリエット
データ表Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?こんにちはデール。
ご助力ありがとうございます。
BR アンリエッテ
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?こんにちは、ジャルモです。
それは完璧に機能しました。 ご助力ありがとうございます。
BR アンリエッテ
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?他の同様のアイデアを見つけました。添付は私のものです(スクリプトなし)。
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?変数に格納する必要はありません。
以下の例。 スクリプトを実行し、MonthNumber の数式を確認します。
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(4),
New Column("Time", Character, "Nominal", Set Values({"M-12", "M-36", "EOS-968", "EOS-1011"}))
);
dt << New Column("MonthNumber", Numeric, Continuous, Formula(
If(StartsWith(:Time, "M"),
Num(Word(2, :Time, "-"))
,
StartsWith(:Time, "EOS"),
Num(Word(2, :Time, "-"))/30
,
. //if starts with something else than "M" or "EOS"
);
));
その後、必要に応じて式を変更できます。
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?こんにちは。
ご助力ありがとうございます。 私は JMP スクリプトに関してまったく新しいので、不足しているロジックを実行する正しい方向に私を向けることができるかもしれません。
「月のロジック」については、「M-」の部分を削除したいだけなので、デールズの回答のWord関数でうまくいくと思います。
「日ロジック」の場合、「EOS-」部分を(Word関数を使用して)削除し、数値部分を日から月に計算します。 ばかげた質問かもしれませんが、2 行のコーディングを追加するだけでよいのでしょうか、それとも何らかの方法で変数に格納する必要がありますか?
ありがとう :)
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?こんにちはデール。 ご協力ありがとうございました。 私が見る限り、説明されているように Word 関数を使用すると、1 列の連続データ (イェーイ) が得られますが、単位は 2 つ (日と月) 異なります。
日を月に再計算する方法についてのアイデアはありますが、数値が日である行に対してのみこれを行いますか?
BR アンリエッテ
Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?Word() の使用に加えて、Starts With および If ステートメントを使用して、月の計算方法を決定できます。
以下のスクリプトは、プレースホルダー値 1 (月) と 2 (日) を追加します。 それらを月の計算のロジックに置き換えます
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(4),
New Column("Time", Character, "Nominal", Set Selected, Set Values({"M-12", "M-36", "EOS-968", "EOS-1011"}))
);
dt << New Column("MonthNumber", Numeric, Continuous, Formula(
If(StartsWith(:Time, "M"),
//month logic here
1
,
StartsWith(:Time, "EOS"),
//day logic here
2
,
. //if starts with something else than "M" or "EOS"
);
));

Re: 時間データ列 (名目) を 1 単位 (月) の連続データに変換するにはどうすればよいですか?「単語」関数がうまく機能しているようです。添付のサンプル ファイルを参照してください。