![](/img/trans.png)
[英]How to resample (Downsample) the time series big data, from 10 Hz (miliseconds) wants to convert to 1 Hz (seconds) using pyspark
[英]How to Convert to Seconds from Data Time using Tableau or Excel
我有一個數據 CSV 文件,其中 Time Duration 用“常規”日期時間語法表示,例如12/30/99 00:00:55 AM
。
由於此值表示持續時間(而不是日期和時間),因此我需要將其轉換為一個數字,以分鍾為單位表示持續時間,例如55
分鍾。
我想知道是否可以使用 Tableau 的計算字段或 Excel 表達式來提取計時00:00:55
部分並將其轉換為表示持續時間的數字(以分鍾為單位)?
以下是我將如何使用 Python 執行此操作: 1. 首先,我將拆分傳入值以將 00:00:55 持續時間部分與12/30/99 00:00:55 AM
隔離:
`value = '12/30/99 00:00:55 AM'`
`duration = value.split()[1]`
hours, minutes, sec = duration.split(':')
seconds = (int(hours)*60*60 + int(minutes)*60 + int(sec))
如果您只想在 Excel 公式中執行此操作以達到秒數將類似於 Python:-
=HOUR(A1)*3600+MINUTE(A1)*60+SECOND(A1)
假設該值可以從 CSV 文件讀取到單元格 A1 中的 Excel 日期時間值。
另一種方法(使用 Excel 中的時間值是一天的幾分之一這一事實)是
=MOD(A1,1)*24*3600
這將是一種非常粗略的方法,並且依賴於相同的格式。
=(MID(E3,10,2)×60×60)+(MID(E3,13,2)×60)+(MID(E3,16,2))
MID -(單元格引用、起始位置、要提取的字符數)
這假設該值在 E3 中,這應該更改為您擁有原始值“12/30/99 00:00:55 AM”的任何單元格。
鏈接 CSV 文件后,Tableau 會根據自己的假設自動將數據類型分配給每一列。 原始 CSV 的Duration列字段值實際上是00:00:00:55
。 但由於 Tableau 將其視為日期時間類型,因此它會立即轉換為12/30/99 00:00:55 AM
,在開始12/30/99 00:00:55 AM
附加12/30/99
在12/30/99 00:00:55 AM
附加AM
。 我右鍵單擊Duration Dimension(這是 Tableau 調用列的方式)並將其日期類型更改為String
。 要將此值轉換為分鍾,我必須使用以下表達式創建一個自定義計算字段:
INT(SPLIT(STR([Duration]), ':', 1))*60*60*60 + INT(SPLIT(STR([Duration]), ':', 2))*60*60 + INT(SPLIT(STR([Duration]), ':', 3))*60 + INT(SPLIT(STR([Duration]), ':', 4))/60
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.