學(xué)生:一會(huì)兒您都在不
在的話我發(fā)給你看下
有個(gè)指標(biāo)一直不對(duì)
但是我有沒發(fā)現(xiàn)問題在哪里
老師:好,馬上到單位
學(xué)生:別激動(dòng),哈哈哈
老師:到了,你說下問題呀
學(xué)生:
好的
剛才在洗澡
老師:不上班嗎?大早上起來洗澡
學(xué)生:
3點(diǎn)下班回來睡會(huì)兒 起來準(zhǔn)備去了
給你發(fā)完數(shù)據(jù)和代碼就走我現(xiàn)在對(duì)用戶按月進(jìn)行非重復(fù)計(jì)數(shù) 但是出來的卻是數(shù)據(jù)的記錄數(shù)
老師:好,你發(fā)我看看
學(xué)生:
代碼如下:
# 1、用戶總體消費(fèi)趨勢(shì)分析 # 每月產(chǎn)生的總訂單數(shù) 每月產(chǎn)生的訂單金額 每月消費(fèi)的總?cè)藬?shù) 每月平均沒人產(chǎn)生訂單數(shù) data_pivot = data_dict.pivot_table(index="月份", values=["用戶ID","商品銷量(子訂單銷售數(shù)量)","訂單總價(jià)","子訂單實(shí)際支付金額"], aggfunc={ "用戶ID":"count", # 對(duì)用戶計(jì)數(shù) "商品銷量(子訂單銷售數(shù)量)":"sum", # 對(duì)銷量求和 "訂單總價(jià)":"sum", # 對(duì)消費(fèi)金額求和 "子訂單實(shí)際支付金額":"sum" }) print(data_pivot)
前面就是一些處理 然后最后這段主要是。
但是我感覺我寫的沒問題
數(shù)據(jù)要的話我可以發(fā)幾天的數(shù)據(jù)給您
用來測(cè)試一下
需要嗎老師?
老師:
好,我希望數(shù)據(jù)少點(diǎn),因?yàn)檫@樣我工作量就會(huì)比較小,因?yàn)槲乙l(fā)到pgc上
你給我的數(shù)據(jù)能說明問題就行
因?yàn)槭且粋€(gè)比較小的問題
學(xué)生:
就給您兩天的吧
不是很大
老師:好
學(xué)生:
數(shù)據(jù)已經(jīng)經(jīng)過脫敏
老師:我要等下看呀,要去找個(gè)同事談點(diǎn)事
學(xué)生:
好吧
哈哈哈 您先忙
學(xué)生:
就這里這個(gè)聚合
不知道為什么 我除了每月用戶數(shù)不對(duì) 其他的都對(duì)
用戶數(shù)這個(gè)我看過 我這個(gè)結(jié)果是記錄數(shù)
老師:第一步是把2月份數(shù)據(jù)縱向合并在一起對(duì)吧
學(xué)生:
你其實(shí)就用一天的數(shù)據(jù)就好了 哈哈哈
不合并也沒事 因?yàn)槲沂潜闅v文件夾導(dǎo)入的數(shù)據(jù)
您用的是哪天的 我看下那天是多少個(gè)用戶
老師:我直接用你的代碼了
你的代碼里面沒有體現(xiàn)去重
學(xué)生:
count啊
那我應(yīng)該怎么寫哇
老師:
那個(gè)count也只能數(shù)數(shù)有效值有多少行
但沒有去重呀
學(xué)生:好像有點(diǎn)道理
老師:
我們?cè)谶@里先記錄一下原結(jié)果
學(xué)生:
這是兩天的數(shù)據(jù)了吧
老師:對(duì)
代碼進(jìn)行如上修改
#定義去重計(jì)數(shù)的函數(shù)distinct_count2 def distinct_count2(x): print(x) y=x.unique() #這里的x是一個(gè)序列 return y.shape[0] data_pivot = data_dict.pivot_table(index="月份", values=["用戶ID","商品銷量(子訂單銷售數(shù)量)","訂單總價(jià)","子訂單實(shí)際支付金額"], aggfunc={ "用戶ID":distinct_count2, # 對(duì)用戶計(jì)數(shù) "商品銷量(子訂單銷售數(shù)量)":"sum", # 對(duì)銷量求和 "訂單總價(jià)":"sum", # 對(duì)消費(fèi)金額求和 "子訂單實(shí)際支付金額":"sum" }) print(data_pivot)
修改代碼后的執(zhí)行結(jié)果
學(xué)生:
噢 你寫了一個(gè)自定義函數(shù) 來對(duì)用戶進(jìn)行非重復(fù)計(jì)數(shù)
NBNB
我怎么沒想到








暫無數(shù)據(jù)