我想計算離群值使用approxQuantile Dataframe。它工作好磚的筆記本,但叫不正常工作時是三角洲的一部分生活表管道。(這是python)。這是不工作的線管道的一部分。
分位數= session_agg_df。approxQuantile (“duration_minutes”, [0.25, 0.75], 0)
Q1 =分位數[0]# <——失敗作為dlt管道的一部分,但在筆記本工作
第三季度=分位數[1]# <——失敗作為dlt管道的一部分,但在筆記本工作
管道失敗與“IndexError:列表索引的範圍”。在一個筆記本,它工作得很好相同的數據。
(我試圖尋找異常值在我管道使用一個非常基本的+ / - 1.5 *差方法。)
同樣,如果任何人有任何建議的最佳實踐編寫和調試dlt管道,我很想聽聽他們!
謝謝,
波特英裏
導致數據科學家
美國天寶有限公司
好建議。我可以做一些類似的事情出現。
步驟2 #。計算是基於duration_minutes局外人會話
lc = session_agg_df。selectExpr(“百分位(duration_minutes, 0.25) lower_quartile”)
session_agg_df = session_agg_df。加入(lc, =“外”)
加州大學= session_agg_df。selectExpr(“百分位(duration_minutes, 0.75) upper_quartile”)
session_agg_df = session_agg_df。加入(加州大學,=“外”)
session_agg_df = session_agg_df。withColumn(“差”,session_agg_df [' upper_quartile '] -session_agg_df [' lower_quartile '])
session_agg_df = session_agg_df。withColumn (lower_limit, session_agg_df [' lower_quartile '] - (1.5 * session_agg_df['差']))
session_agg_df = session_agg_df。withColumn (upper_limit, session_agg_df [' upper_quartile '] + (1.5 * session_agg_df['差']))
session_agg_df = session_agg_df。withColumn (is_outlier, f。當(session_agg_df duration_minutes的< session_agg_df | \ [' lower_limit '])
(session_agg_df [' duration_minutes '] > session_agg_df [' upper_limit ']), 1) .otherwise (0))
我相信有更多的最佳方法,但上述國旗的離群值(基於差法)在我的數據。貼裝進箱任何人卡住了。
英裏