我有一個數據集,其中時間列的格式為“ Mon,30 Nov 2020 21:42:26 GMT”,JMP將此識別為字符數據類型。 有沒有一種快速的方法可以將此列轉換為數字連續類型?
這是一個小腳本,它將使用轉換後的值創建一個新列。請注意,我假設您當前帶有字符日期的列稱為“日期”。請將該腳本更改為真實列的名稱。
dt = Current Data Table();
dt << New Column( "Date Time",
Format( "ddMonyyyy h:m:s", 22, 0 ),
Input Format( "ddMonyyyy h:m:s", 0 ),
,
formula(
Informat(
Word( 2, :Date, ", :" ) || Word( 3, :Date, ", :" ) ||
Word( 4, :Date, ", :" ) || " " ||
Word( 5, :Date, ", :" ) || ":" ||
Word( 5, :Date, ", :" ) || ":" ||
Word( 5, :Date, ", :" ),
"ddMonyyy h:m:s"
)
)
);
dt:Date Time << delete formula;
您可以交互方式進行更改。 選擇數據列。 選擇“列>列信息”。 將數據類型更改為數值。 將格式更改為與字符串匹配的日期格式。 您不需要這種方式的新列。
如果使用Mark的方法,則需要先刪除多餘的位。 我在“查找/替換”對話框中使用了正則表達式:
您必須運行兩次。 第一次刪除日期,第二次刪除GMT。
正則表達式匹配三個字母,後跟一個逗號和一個空格,或者匹配一個空格,後跟GMT。
然後使用
在相同的時間更改數據類型*和*格式,否則將丟失值。
如果使用吉姆的方法,我認為最後的5-5-5應該是5-6-7。
如果@markbailey方法行不通,我使用此插件@brady_brady :數據表工具
數據表工具>特殊公式列>自定義日期公式編寫器。